昨天我可以将sourcetree中的文件与外部工具filemerge合并。今天,sourcetree希望我注册我,在我成功注册后,我无法启动filemerge。
当我从文件的上下文菜单中选择“启动外部差异工具”时,会出现4个文件(备份,基本,本地和远程),但filemerge会立即退出。
当我启动外部差异时,filemerge在左侧/ dev / null中显示为源。我该如何解决?在首选项中,我选择filemerge作为外部差异工具。我是否要手动为源树编写diff命令,为其提供正确的文件本地版本?我该怎么办?
由于
答案 0 :(得分:11)
我解决了这个问题。
如果与其中一个分支中不存在的文件发生合并冲突,则filemerge会立即退出。
答案 1 :(得分:1)
我在SourceTree中遇到了相同的问题,在其中尝试使用“在外部合并工具中打开”。 FileMerge应用程序立即退出。
在一个地方或另一个地方删除的文件中,没有合并冲突,但是在一个刚刚更改的文件中,我没有合并冲突。
我找不到根本原因,但可以使用命令行来解决:
git mergetool
打开FileMerge很好,我可以解决FileMerge中的冲突,保存,退出,返回SourceTree,刷新,然后解决了冲突。
答案 2 :(得分:0)
我遇到了同样的问题,使用Git,SourceTree和OpenDiff。
问题来自删除/修改冲突。
在我的情况下,我删除了一个功能分支中的文件,而团队伙伴修改了开发人员分支中的文件,只剩下一个我无法区分的文件。
您必须在拒绝文件之间做出选择,从而放弃您的队友所做的更改,或者接受该文件。
您还可以使用git log <branch> <path>
在另一个分支上记录修改后的文件,以查看其更改
答案 3 :(得分:0)
我昨天遇到了同样的问题。我正在使用 mac 并拥有 Xcode。我安装了命令行工具并在 Xcode 下映射。还在 Sourcetree 首选项中将差异更改为 FileMerge。我开始把它打开。 有时甚至文件出现在冲突列表中,但文件中可能没有任何冲突。它是由于项目临时文件/缓存或您有中间提交而发生的。您仍然可以双击该文件,它将在您的 IDE 中打开,您可以进行验证。如果没有变化,标记为解决,然后进入阶段。