2016-10-19 10 views
0

私のリポジトリの最新の変更ファイルを取得したい。それを行うにはGitでコミットされた最新のファイルを入手する方法

私は、最新のIDをコミット取得するには、このコマンドを実行しています

git log --format="%H" -n 1 

そして私は、このコマンドに出力を貼り付けます。今

git diff-tree -r --no-commit-id --name-only --diff-filter=ACMRT "PREV_COMMAND_OUTPUT" | xargs tar -rf changedFiles.tar 

、どのようにIこれらのコマンドをマージして、最初の出力を2番目のコマンドの引数として渡すと出力できますか?

おかげ

答えて

1

あなたがLinux上である場合(OSXでも働くかもしれない)とリアルシェルへのアクセス権を持って(申し訳ありませんが、Windowsは動作しません)あなたは、コマンド置換を使用することができます。

git diff-tree -r --no-commit-id --name-only --diff-filter=ACMRT $(git log --format="%H" -n 1) | xargs tar -rf changedFiles.tar 

または

git diff-tree -r --no-commit-id --name-only --diff-filter=ACMRT `git log --format="%H" -n 1` | xargs tar -rf changedFiles.tar 

しかし、あなたは常に最後のコミットIDを使用していることから、あなたにもちょうどでコマンド全体を置き換える可能性があります

git diff-tree -r --no-commit-id --name-only --diff-filter=ACMRT HEAD | xargs tar -rf changedFiles.tar 
関連する問題