分支冲突发生在合并两个分支时,Git无法自动合并更改。冲突通常发生在以下情况下:
当Git报告冲突时,使用以下命令查看冲突文件:
git status
打开冲突文件,你会看到类似以下的标记:
<<<<<<< HEAD
当前分支的更改
=======
要合并分支的更改
>>>>>>> branch-to-merge
<<<<<<<
, =======
, >>>>>>>
)。Git支持使用第三方合并工具,如Meld、KDiff3、Beyond Compare等。
例如,配置Meld作为合并工具:
git config --global merge.tool meld
在报告冲突后,运行以下命令启动合并工具:
git mergetool
按照工具提示进行合并,保存更改后关闭工具。
确认所有冲突已解决并保存文件。
使用以下命令添加解决后的文件到暂存区:
git add <conflict-file>
提交更改:
git commit -m "Resolved merge conflict"
推送远程仓库:
git push <remote-name> <branch-name>
手动编辑冲突文件,保留必要的更改并删除冲突标记。
决定是保留删除还是保留修改:
git rm <file>
。git add <file>
。