Git Visual Studio(2017)合并工具未与Unity托管文件一起打开
我目前正试图对我的Unity项目维护一些基本版本控制(git),但在尝试将vsDiffMerge设置为我的合并工具时遇到了一个问题 目前,Unity拥有自己的内部工具UnityYAMLMerge,它可能被设置为默认工具,这是因为它与引擎集成在一起。 但是,当Unityyalmerge无法自动解决冲突时,还可以指定一个“回退”合并工具,由Unity自动调用 我试图做的是将VisualStudio的vsDiffMerge设置为我的备用工具,但到目前为止,我运气不好。无论我做什么,它总是打开的Difftool,而不是另一个 简要回顾当前情况: 1) 我已经在.gitconfig中将unityyalmmerge配置为默认的合并工具(遵循官方文档中给出的建议),我可以肯定它工作正常 2) 需要在Unity的mergespecfile中指定回退合并工具引用,我也这样做了。事情是这样的:Git Visual Studio(2017)合并工具未与Unity托管文件一起打开,git,visual-studio,unity3d,merge,mergetool,Git,Visual Studio,Unity3d,Merge,Mergetool,我目前正试图对我的Unity项目维护一些基本版本控制(git),但在尝试将vsDiffMerge设置为我的合并工具时遇到了一个问题 目前,Unity拥有自己的内部工具UnityYAMLMerge,它可能被设置为默认工具,这是因为它与引擎集成在一起。 但是,当Unityyalmerge无法自动解决冲突时,还可以指定一个“回退”合并工具,由Unity自动调用 我试图做的是将VisualStudio的vsDiffMerge设置为我的备用工具,但到目前为止,我运气不好。无论我做什么,它总是打开的Diff
* use "%programs%\Microsoft Visual Studio\...\Team Explorer\vsDiffMerge.exe" "%l" "%r" "%b" "%d" /m
其中:
%l被替换为本地版本的路径
%r被替换为传入远程版本的路径
%b替换为通用基础版本
%d被替换为结果应写入的路径
在Windows上%programs%被替换为“C:\Program Files”和“C:\Program Files(x86)”,从而产生两个要尝试的条目
以上是文件中的解释
我相信我已经对vsDiffMerge的命令行参数做了相当多的搜索,并尝试了多种组合,但都不起作用。也许只是最近他们的行为方式有所改变 注意:我在遇到冲突时尝试过显式使用该工具,在.gitconfig中指定其路径,然后运行
git mergetool --tool="vsdiffmerge"
而且它是有效的(参数设置方式与上面相同)。这似乎是某种特定于“mergespecfile”的东西,但我不知道是否真的是这样
注#2:其他工具(如kdiff3)确实是这样工作的,因此这绝对不是一般问题
如果您能在这个问题上提供帮助,我将不胜感激。提前感谢。但是为什么不想使用kdiff3呢?VisualStudio支持它非常好,您只需将CytoToMe配置指向KDIF3.EXE文件,然后它将自动按正确的顺序填写所需的<代码> %参数。除非我出错,否则您将谈到Team Foundation Server设置,因为这是用户向VS添加第三方工具的唯一方法(至少是我听说的唯一方法,如果我错了,请纠正我)。然而,据我所知,选择它作为版本控制插件会禁用git支持,这是我不想做的。