<<<<< HEAD
mark在存在冲突时被添加到文件中。
所以,当你重订一个分支和Git发现一些冲突更改它的标签,标志着它
<<<<<<< HEAD
conflicting changes in HEAD
============
conflicting changes in current commit
>>>>>>> commit SHA1
每当有冲突的Git的bash通过暂停底垫和显示的确切承诺数提供了一个指示。您可以手动解决冲突,也可以通过像kdiff3这样的mergetool来解决冲突。然后你可以做git rebase --continue
继续rebase。
让我们来看一个例子
上面的例子有以下点
- 的Git的bash检测到冲突而重订BRANCH1到主
- ,Git提供了帮助,希望可能是下一步
- git暂停rebase并显示暂停rebase的时间点。
这些都清楚地表明您的文件标有冲突标签。
这里是在这个文件指出
所以你必须去的文件,找到标有标签,删除或添加行,保存文件,git的添加,并键入git rebase --continue
解决。
就你而言,你可能意外地遗留了<<<<<<< HEAD
标记并继续使用rebase。
为了避免这种情况,最好的方法是使用像kdiff3这样的合并工具。你可以在这里找到 http://jebaird.com/2013/07/08/setting-up-kdiff3-as-the-default-merge-tool-for-git-on-windows.html
的步骤安装并配置kdiff3后,你只需要类型git mergetool
在bash打开kdiff3,每当有冲突,通过简单地选择你想要的部分解决冲突。 kdiff3还提供了通过点击按钮跳转到冲突线的功能。
希望这有助于
来源
2017-03-02 14:11:31
nak
我只是简单地看着为过量使用的文档,并看到了[MergeConflicts](https://github.com/brigade/overcommit/blob/master/lib/overcommit/hook/pre_commit /merge_conflicts.rb)预先提交钩子。这不是你想要的吗? – Hasturkun
是的,我确实启用了它。但是这发生在rebase/merge操作中,所以预先提交钩子没有被触发(至少没有警告)。 –