gpt4 book ai didi

windows - SourceTree 自定义操作不起作用,但通过 Git 终端窗口起作用

转载 作者:可可西里 更新时间:2023-11-01 09:36:57 24 4
gpt4 key购买 nike

我正在尝试设置 Source Tree 自定义 Git 操作以提取和压缩文件以从选定的提交到 HEAD 进行部署,使用 --diff-filter 排除已删除的文件。

archive -o deploy.zip HEAD $(git diff --name-only --diff-filter=ACMR $SHA)

Source Tree custom action screenshot

问题是这个 Git 命令在 Git 终端窗口中完美运行,没有错误,但是当我尝试在源代码树中使用它时,我得到了这个错误。

git archive -o deploy.zip HEAD $(git diff --name-only --diff-filter=ACMR fbf360c607b01fc8c504c9fcf98114eb4bc1896c)
错误:未知选项名称

Source Tree custom action error message screenshot

我试图找出这个问题的问题所在,但没有成功。我想知道是否有人在 Source Tree 中遇到过这个或类似的问题,因为它对我来说像是一个错误。

最佳答案

$(...) 是 bash commands substitution ,它在内部运行命令并将其输出插入命令行。 SourceTree 不使用 bash 来调用命令(它是 Windows,不是吗?),并且您的命令不会被替换。

您应该改为将命令放在脚本中,大致如下:

------c:..\script.sh-----

#!/bin/sh
git archive -o deploy.zip HEAD $(git diff --name-only --diff-filter=ACMR "$1")

并设置从源代码树中调用它:
要运行的脚本:[ ...\bash.exe ]
参数:[ -c c:..\script.sh $SHA1 ]

关于windows - SourceTree 自定义操作不起作用,但通过 Git 终端窗口起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36212080/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com