macOS下SourceTree执行git-flow Finish Feature时出现短标志缺失错误求助
解决SourceTree在macOS上Finish Feature时的git-flow短标志错误
嘿,这个问题我之前帮好几个开发者排查过,本质是macOS自带的git-flow版本太老旧,不支持SourceTree里用到的长命令参数(比如--showcommands、--push这类),所以才会弹出一堆short flag required的错误提示。
下面是一步步的解决办法:
第一步:安装最新版的git-flow-avh
macOS自带的git-flow是原始的、停止维护的版本,我们需要用Homebrew安装活跃维护的git-flow-avh分支:- 打开终端,先卸载可能存在的旧版git-flow:
brew uninstall git-flow - 安装最新的git-flow-avh:
brew install git-flow-avh
(如果你的Mac是M系列芯片,Homebrew的路径可能是
/opt/homebrew/bin,Intel芯片则是/usr/local/bin,后续路径要对应上)- 打开终端,先卸载可能存在的旧版git-flow:
第二步:让SourceTree使用Homebrew安装的Git和git-flow
- 打开SourceTree,点击顶部菜单栏的「SourceTree」→「偏好设置」→「高级」
- 在「Git可执行文件路径」中,选择Homebrew安装的Git路径:
- Intel芯片:
/usr/local/bin/git - M系列芯片:
/opt/homebrew/bin/git
- Intel芯片:
- 确认git-flow的路径也指向Homebrew的bin目录(git-flow-avh安装后会自动放在这个目录下,SourceTree会自动识别)
第三步:验证版本
回到终端,输入以下命令确认git-flow版本:git flow version如果输出是类似
1.12.3 (AVH Edition)的结果,说明安装成功。
现在再回到SourceTree尝试执行「Finish Feature」操作,应该就能正常完成了——因为新版的git-flow-avh完全支持SourceTree使用的长参数语法。
内容的提问来源于stack exchange,提问作者Arif Acar
相关产品推荐
相关产品推荐

