2011-09-20 39 views
0

我已成功将万花筒设置为我的默认git difftool,并且像魅力一样工作。但是当我做一个提取然后git difftool,我可以看到什么改变了,但我不能选择或合并我想要的(至少不是通过万花筒)。配置:获取git数据,然后将其与git mergetool合并

现在,我想成立文件合并(与XCode的捆绑合并应用程序)作为我的合并工具,所以我可以取回,看到发生了什么变化,并选择什么合并。

这可能吗?如果是这样,我该如何设置?

我很抱歉提出一个没有问题的问题。

回答

1

我使用SourceGear的DiffMerge应用程序进行合并。它比opendiff(Xcode合并工具)好得多,这是我的建议。如果你真的想要,你可以使用下面的原则来配置opendiff,但它比DiffMerge的功能强大得多。

我的git全局配置文件包含:

[mergetool "diffmerge"] 
     cmd = "diffmerge --merge --result=\"$MERGED\" \"$LOCAL\" \"$(if test -f \"$BASE\"; then echo \"$BASE\"; else echo \"$LOCAL\"; fi)\" \"$REMOTE\"" 
     trustExitCode = false 
[merge] 
     tool = diffmerge 

所以,现在当有合并的事,我说“混帐合并工具”,它会提示我启动DiffMerge为需要合并的每个文件。我可以从文件的所有选项中进行选择,将其保存到已解析的文件中,然后继续。这是很不错的。

+0

这似乎像一个魅力工作,但我不能用它来获取然后合并 - 关于如何做到这一点的任何指针? – AeroCross

+0

那么,你不一定使用合并工具来“获取然后合并”。您使用它来解决合并冲突。如果你“拉扯”,它会自己合并愉快的事情,并且对任何不能解决的合并冲突感到痛苦。然后,如果你说'git mergetool',它会遍历冲突的文件,让你手动解决它们。 –

+0

我终于有机会测试DiffMerge并且像魅力一样工作 - 3路合并特别棒。问题是它不支持UTF-8字符,或者我错过了什么? – AeroCross