首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >FileMerge在从SourceTree启动后立即退出

FileMerge在从SourceTree启动后立即退出
EN

Stack Overflow用户
提问于 2015-09-23 00:14:29
回答 7查看 15.3K关注 0票数 63

我经常使用Atlassian (在Mac上)启动FileMerge来解决git合并冲突。它突然停止工作:当我右键单击并选择Resolve Conflicts > Launch External Merge Tool时,FileMerge启动并创建其中间文件,然后立即退出。SourceTree将其解释为合并过程正在完成。

有什么问题,我如何调试/修复它?

我注意到,前面的问题“SourceTree filemerge quits immediately and creates 4 files. How to fix it?”并不涉及这个特定的场景(例如,它在标题中说FileMerge退出,但在正文中它说FileMerge将/dev/null显示为其中一个面板)。另外,我的合并冲突不是由于删除的文件造成的。)

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2017-01-05 17:09:14

为了诊断这个问题,我从终端运行了opendiff。我收到以下错误:

选择:错误:工具'opendiff‘需要Xcode,但是active developer目录'/Library/Developer/CommandLineTools’是一个命令行工具实例

解决:

  1. 打开Xcode > Preferences > Locations
  2. 单击命令行工具旁边的下拉框并选择当前的Xcode版本。(这对我来说是空的,因为我最近在一台新Mac上安装了Xcode。)

  1. 再次在终端中运行opendiff,上面的错误将不再出现。

现在,当您单击FileMerge启动外部合并工具时,SourceTree将正确打开。

票数 178
EN

Stack Overflow用户

发布于 2017-07-18 12:25:56

对我来说,SourceTree甚至没有推出FileMerge。当单击启动外部合并工具时,什么都没有发生。

此外,在终端中运行opendiff也如预期的那样:

代码语言:javascript
复制
$ opendiff
opendiff[64176:5561154] too few arguments
opendiff[64176:5561154] usage: opendiff file1 file2 [-ancestor ancestorFile] [-merge mergeFile]

帮助我的是手动配置SourceTree,通过带有以下参数的opendiff命令使用FileMerge:$LOCAL $REMOTE -ancestor $BASE -merge $MERGED

这样,SourceTree按预期的方式打开FileMerge。

票数 22
EN

Stack Overflow用户

发布于 2018-09-07 11:00:46

这很有帮助:https://gist.github.com/kylefox/4512777

当Xcode实用程序运行时,告诉system:

sudo选择-switch /Applications/Xcode.app/Contents/Developer

将"opendiff“设置为默认的全局合并工具:

git配置--全局merge.tool opendiff

票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32729049

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档