在我正在使用的代码存储库中,当我执行拉操作时,Git会警告合并冲突,并输出一条错误消息,消息如下:
Automatic merge failed; fix conflicts and then commit the result.
所以,然后我运行'git mergetool‘。它给出了一个合并工具候选列表,然后显示一条消息:
Merging fileA
Normal merge conflict for fileA
{local}: modified file
{remote}: modified file
Hit return to start merge resoution to
我以前经常用P4merge解决冲突。我发现它还好,但我没有注意到它是如何在引擎盖下工作的。直到最近,我才意识到它试图自己进行合并。因此,它不显示出与git相同的冲突,这使我的经理感到沮丧(就像在let's switch back to clearcase沮丧中一样)。
问题是: git向无法合并的文件添加注释,这些注释类似于
<<<<<<< HEAD
this code
=======
the other code
>>>>>>> feature/branch-name
是否有一个图形化
假设我们有一个文件common_ancestor (master)
ok
ok
ok
ok
ok
在那里,我们更改并提交master到
ok
change not ok (looking back)
ok
ok
ok
latest change
ok
现在我们有了一个更好的主意,签出common_ancestor并将其更改为
ok
ok
ok
This is a really good change
ok
ok
并在一个新的分支dev中提交。由于我需要master的一些开发,所以我想将dev合并到master中,但我想决定是否保留每个更改。我试过了
git checkout master
gi
我使用下面的命令将master的分支重新设置为我的分支
git rebase master
然后我在很多文件中遇到了冲突。为了解决冲突,我通常做的是
git mergetool -t kdiff3
通常我会用kdiff3来解决冲突。但这一次,mergetool给出了以下输出
No files need merging
但实际上有很多有冲突的文件。我所期望的是它会给我一个解决冲突的窗口。
我试图从终端打开kdiff3,并将两个本地文件作为kdiff3的参数传递(而不是在git中)。我正在使用的Kdiff3作为git工具,它可以很好地比较我当前的版本和回购头版本。但是,当我将本地文件(而不是git中的kdiff3 )作为终端的参数运行时,会出现这个问题,然后我会收到一个错误:FSPathMakeRef(local_kdiff_path/kdiff3.app ) failed with error -43. FYI,kdiff3.app路径位置与我为git工具或别名定义的路径位置完全相同。我尝试了两种方法,但没有一种奏效:
alias kd2='open -a "l
当我尝试拉取时,我收到以下消息:
Automatic merge failed; fix conflicts and then commit the result.
因此,我尝试修复冲突(正如git建议的那样),因为我遵循指令。
我需要做的第一件事就是在文本编辑器中打开“有问题的”文件,找到像这样的行
If you have questions, please
<<<<<<< HEAD
open an issue
=======
ask your question in IRC.
>>>>>>> branch-
我正在尝试让我的cygwin git安装与kdiff3一起工作。
我遵循了诺姆·刘易斯的指示:
但它不起作用:
正在运行
git mergetool -t kdiff3
结果如下:
Normal merge conflict for ...
{local}: modified file
{remote}: modified file
Hit return to start merge resolution tool (kdiff3):
The merge tool kdiff3 is not available as '~/kdiff3.sh'
但是,运行
~/kdi
我已经开始使用meld作为我的merge.tool。到目前为止,它工作得很好,但我今天遇到了一个三向合并的问题。
在MyBranch的file.txt中,我添加了代码ME
A
B
ME
D
E
同时,master增加了代码THEM_1和THEM_2。我运行git rebase master。这是file.txt在rebase暂停时的样子:
A
THEM_1
B
<<<<<<< HEAD
ME
||||||| merged common ancestors
=======
THEM_2
>>>>>>