博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
我 Git 命令列表 (2)【转】
阅读量:6832 次
发布时间:2019-06-26

本文共 3784 字,大约阅读时间需要 12 分钟。

转自:

因为我试图导入我旧的 WordPress 帖子到此博客影响source分支,我创建了一个新的分支,称为wpcom-importer分支,对rake deploy成功的运行。然而,一些我旧的 WordPress 博客包含一些特殊的字符,触发编码问题。rake错误消息来看,我觉得我已经把转换的员额从 WordPress 的 XML 的右边的树枝上。

因此,起草了我新的职位上source分支,但不是wpcom-importer分支上。然后切换到wpcom-importer并删除一些不需要的部分的 XML 文件。然而,我不能切换回source分支做另一个提交。因此,我用git stash来解决问题。

完成后的草案,我犯下的变化、 切换到wpcom-importer和"合并"上次更改对source分支为rake preview。在source分支上运行预览命令的理由是为了避免在public文件夹中的巨大变化。已经学会了做"合并",从。

陌生与显示的数学方程kramdown 语法,我犯了一些错误在源代码中为我上source分支写入草案时。


(上次编辑君 19,2014)

从网络图中,我意识到我在了解合并在 Git 中的错误。我不应该手动犯下同样的变化,不同的分支,但也要将它提交一次只上一个分支和合并时提交另一个分支,如果两个不同分支之间没有冲突。

我继续写<posts>。不幸的是,我有wpcom-importer,而不是source分支上发生的变化。我很想去

  1. 在文件中删除提交,但保持所做的更改。
  2. "移动"更改后的文件从wpcom-importersource分支。
  3. 提交对source分支更改。
  4. source分支中的更改合并到wpcom-importer.

我发出下面的命令来做到这一点。

$ git reflog                   # For checking purpose$ git reset --soft HEAD^       # Revert to the previous commit$ git log -3                   # For checking purpose$ git status                   # `
' should be in `... not staged for commit'$ less
# For checking purpose$ git reset HEAD
# Unstage `
' for commit$ git checkout source # Go to the correct place for the commit$ git add
# Add back `
' to `source' branch$ git commit -am "
" # Do the commit on the correct branch$ git checkout wpcom-importer # Go back to another branch for merging$ git merge source # Merge the changes back

小列表

收起和抓取

"藏"的手段,去另一支在这里临时区域中未提交的更改。

用中文写的是一个 Git 命令的快速摘要。我学会了使用git stash命令从那里。

$ git stash                      # save the uncommitted changes$ git stash list                 # show a list of stashes$ git stash show                 # inspect a list of stashes$ git stash pop                  # apply and discard the topmost stash$ git stash apply                # apply but don't discard the topmost stash$ git checkout source -- 
# copy the file from other branch

在最后一次"合并"命令, --避免歧义因为source可以是一个分支或文件夹的名称在这种情况下。此外,此命令会影响提交历史。

更多关于倒带的事情

回溯到以前的版本在同一分支

这里是关于重置工作树与以前的版本更多的命令。

$ git reset --soft HEAD^   # Revert to the previous commit without changing the files$ git reset --hard HEAD~2  # Take a further step back from `HEAD' and discard all changes in the files in the disappeared commits

重置和还原的东西之间的区别

本手册的git reset,看到了一个链接到git revert,和听不懂那些从那里的两个命令之间的区别。

如果你想要撤消提交以外最新的一个分支, 是你的朋友。

网页中的堆栈溢出真的是我的朋友。()git revert不会覆盖提交历史,所以它适合发布的更改,虽然git reset可以改写历史。

撤消合并

请参阅撤消合并或拉git reset为解释手册 》 中的以下部分。

撤消的矛盾的合并

供应链管理会说:

Automatic merge failed; fix conflicts and then commit the result.

因此,问题合并没有一直致力。简单地运行git reset --hard将解决这个问题。

撤消成功自动合并

使用ORIG_HEAD而不是HEAD的分支合并前提示。(即git reset --hard ORIG_HEAD)

使用 git diff 合并提交

(添加在 2014 年 6 月 20 日)

一个缺点"......"

乐极生悲可能在git merge中发生的冲突,其中一个可能运行git diff <branch1>..<branch2>看出两个分歧分支之间的差异。然而,比较大块,并不表明添加和删除每个分支上。-在 diff 大块可以引起要么

  1. 增加的内容在<branch1>;或
  2. 删除的<branch2>中的内容.

<branch2>上运行git merge <branch1>在不同情况下给出了不同的结果。

  1. 线开始与-比较中大块将插入到<branch2>.
  2. 线从开始比较, -大块插入到<branch1>.

为预测是否会有冲突,需要知道每个分支上做更改已完成。因此,我们需要比较尖端的每个分支与他们共同的祖先。

让我举出两个例子作为说明。

示例 1

一个人有这样一个文件。

两个分支的父
123
line 1line 2line 3

然后它被分为两个分支。

分支 1 (线 1 删除)
12
line 2line 3
分支 2 (线 2 删除)
12
line 1line 3

运行git diff <branch1>..<branch2>,一个获取

+line 1-line 2 line 3
示例 2

一个人有这样一个文件。

两个分支的父
1
line 3

然后它被分为两个分支。

分支 1 (线 2 插入)
12
line 2line 3
分支 2 (线 1 插入)
12
line 1line 3

运行git diff <branch1>..<branch2>一个获取

+line 1-line 2 line 3

观察: diff 帅哥中的两个例子都相同,即使它们的共同祖先和文件中的更改是不同.

克服缺点

从上述的子部分中,很明显那个需要比较尖的每个分支上用两个分支的共同祖先。来看看如何<branch1>已被修改,git diff <branch2>...<branch1>可以用来比较的提示<branch1>与的共同祖先<branch1><branch2>.

 

【作者】
【出处】
【博客园】
【新浪博客】
【知乎】
【我的作品---旋转倒立摆】
【我的作品---自平衡自动循迹车】
【新浪微博】 张昺华--sky
【twitter】 @sky2030_
【facebook】 张昺华 zhangbinghua
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
你可能感兴趣的文章
mysql进阶(六)
查看>>
云场景实践研究第84期:东润环能
查看>>
面试 -- 数字签名与数字证书
查看>>
Android2.2 API 中文文档系列(6) —— ImageView
查看>>
LoadRunner多场景的串行执行以及定时执行
查看>>
不被注意的细节 WiFi密码暗藏巨大隐患
查看>>
Java核心技术卷I基础知识3.7.3 文件输入与输出
查看>>
CentOS 5.5 系统安全配置
查看>>
中标麒麟操作系统V6安装NGINX
查看>>
VirtualBox+phpvirtualbox+扩展包
查看>>
跨库复制数据
查看>>
从零实现一个高性能网络爬虫(一)网络请求分析及代码实现
查看>>
AIX的vmstat命令详解
查看>>
快速掌握Redis——第六招:持久化 (数据备份与恢复)
查看>>
Linux 下ffmpeg视频转码实战二——参数宝典
查看>>
原生的必定美丽
查看>>
android LinearLayout的相关错误
查看>>
谢烟客---------Linux之压缩解压缩及归档工具的使用
查看>>
常用jvm参数配置以及提供系统堆益处日志监控方法
查看>>
《WPF揭秘》勘误表
查看>>