解决合并冲突

如果提交的更改存在合并冲突,您需要使用 git rebase 手动解决它。

Rebase 用于将一个分支的更改集成到另一个分支,以解决同一文件上发生多个提交时的冲突。

警告

切勿在公共(master)分支上执行 rebase。

  1. 您提交了一个更改。

  2. 另一个人提交了一个更改,并且该更改已合并。现在您的更改存在合并冲突。

  3. 更新您的本地仓库

    $ git remote update
    $ git pull --ff-only origin master
    
  4. 下载您的更改

    $ git review -d $PARENT_CHANGE_NUMBER
    
  5. Rebase 您的更改

    $ git rebase origin/master
    
  6. 手动解决冲突

    冲突在文件中用清晰的换行符标记

    <<<<<<< HEAD
    Second line.
    =======
    Third line.
    >>>>>>> feature/topic branch.
    

    <<<<<<<: 表示存在合并冲突的行的开始。

    =======: 表示两个冲突更改的分隔。

    >>>>>>>: 表示存在合并冲突的行的结束。

    您需要通过手动编辑文件来解决冲突。您还需要删除文件中的 ‘<<<<<<<’、‘=======’ 和 ‘>>>>>>>’。

  7. 将文件添加到暂存区

    $ git add $FILENAME
    
  8. 完成 rebase 过程

    $ git rebase --continue
    
  9. 再次发送 rebase 后的补丁进行审核

    $ git review