2016-03-25 45 views
3

ソースツリーのカスタムGitアクションを使用して、選択されたコミットからHEADまで展開するファイルを抽出および圧縮し、--diff-filter 。SourceTreeのカスタムアクションは機能しませんがGitターミナルウィンドウで動作します

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) error: unknown option name-only

Source Tree custom action error message screenshot

私は成功せず、この問題での問題が何であるかを把握することを試みました。ソースツリーで誰かがこのような問題を抱えていたかどうか聞いてみたいと思います。事前に

おかげで、

乾杯

+0

私はcorrectlを推測した場合あなたは窓でそれを実行する質問を編集して "windows"タグを追加してください – max630

答えて

0

$(...)は、内部コマンドを実行し、代わりに、コマンドラインにその出力を挿入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]
パラメータ:ソースツリーからそれを呼び出して設定する[-cc:.. \ script.sh $ SHA1]

+0

あなたの答えは@ max630です。私はあなたの解決策を試しました。このエラーが発生しました: 'bash.exe -c C:/Users/SUBA/Documents/SourceTree/deploy.sh 110738aee6726fbef57370e4b5c63962c6530aa1 C:/Users/SUBA/Documents/SourceTree/deploy.sh:2行目:git:コマンドが見つかりません ' –

関連する問題