这可能听起来像是一个基本的问题,但我已经寻找答案,我现在比以前更困惑.
当我的分支合并到我的另一个分支时,git中的"我们的"和"他们的"是什么意思?两个分支都是"我们的".
合并冲突是"我们的"总是显示两个版本的上部?
"我们的"总是指合并开始时HEAD指向的分支吗?如果是这样,那么为什么不使用像"当前分支"这样的明确的所有格引用而不是使用像"我们的"这样的所有格代词,这些代词是引用模糊的(因为这两个分支在技术上都是我们的)?
或者只是使用分支名称(而不是说"我们的"只是说"本地主人"等)?
对我来说最令人困惑的部分是我在特定分支的.gitattributes文件中指定.让我们说在测试分支中我有以下.gitattributes文件:
config.xml merge=ours
Run Code Online (Sandbox Code Playgroud)
现在我结账并指出HEAD为master然后合并测试.由于master是我们的,并且test的.gitattributes没有签出,它甚至会产生影响吗?如果它确实有效果,因为主人现在是"我们的",那么会发生什么?
我可以通过winmerge向我展示修改后的文件的差异。但是对于新文件,winmerge会显示一个对话框,提示“左路径无效!”。我希望它将左窗格显示为空白,而右窗格显示文件的内容。
$ git difftool head^ newfile.txt
Run Code Online (Sandbox Code Playgroud)
winmerge对话框:
我在git版本2.8.2.windows.1上
这是我的difftool的git配置:
[diff]
tool = winmerge
[difftool]
prompt = false
[difftool "winmerge"]
cmd = \"C:\\Program Files (x86)\\WinMerge\\WinMergeU.exe\" -e -ub -wl \"$LOCAL\" \"$REMOTE\"
Run Code Online (Sandbox Code Playgroud)
我想念什么?
如何配置Perforce使用TortoiseMerge工具进行差异和合并?
我尝试过论点
/base:%1 /mine:%2
Run Code Online (Sandbox Code Playgroud)

关注http://tortoisesvn.net/docs/release/TortoiseMerge_en/tme-automation.html和http://www.perforce.com/perforce/doc.current/manuals/p4v/Configuring_display_preferences.html#Diff.Perforce文档说
在Arguments字段中为第三方diff应用程序指定参数:输入%1作为第一个文件的名称,输入%2作为第二个文件的名称.P4V在调用diff应用程序时用实际的文件名替换这些占位符.
然而,当我尝试它时,TortoiseMerge错误"无法打开文件%1"表明P4V没有替换参数并保持%1原样
