解决git pull中的合并冲突?

时间:2018-02-25 06:05:51

标签: git github git-pull

我需要帮助解决GitHub中的git pull中的合并冲突,我做了以下操作 在我目前的分支机构,我做了以下
FA

  1. git pull --rebase master
  2. git pull ssh:.....(从我的评论中删除了更改)
  3. 在一个文件中存在合并冲突
  4. 删除所有冲突
  5. git add .
  6. 当我尝试使用git commit --amend提交时我收到了错误
  7.   

    "致命:你正处于合并的中间 - 无法修改"

    我想在不创建新提交ID的情况下再次修改相同的提交。有办法吗?

1 个答案:

答案 0 :(得分:2)

鉴于您的历史记录如下:

B    C1   C2
o----o----o master
      \
       o feature
       F

您可以将更改从feature重新绑定到您将其拉入的分支(master),以使其成为“快进合并”,从而创建线性历史记录:

B    C1   C2   F
o----o----o----o master, feature

或者,在您描述的阶段,您可以运行git commit(不使用--amend)继续创建记录合并结果的提交:

B    C1   C2   M
o----o----o----o master
      \       /
        --o--  feature
          F

如果您希望有一个显式合并提交来表示您合并了一个功能分支,您可以使用--no-ff标记进行rebase然后合并,创建如下内容:

B    C1   C2        M
o----o----o---------o master
           \       /
             --o--  feature
               F

您选择哪种变体取决于您自己决定;这三个都是有效的。我通常更喜欢重新定义功能分支,以避免在单独的提交(合并提交)中解决合并冲突。保持历史线性(不合并)是工作流程和品味的问题。