2017-08-25 6 views
2

InterestingFile.cppの各コミット済みバージョンをディレクトリにコピーしたいとします。ファイルの各バージョンのコピーをgitリポジトリに作成

先のファイルは、以下の例では動作しますが、helper.shスクリプトを必要と

/tmp/AllVersions/1495035445のような)ファイル名としてそのコミットのタイムスタンプを持つ必要があります。どのようにヘルパースクリプトなしで1行で書くことができますか?

$ git rebase -i --exec "~/helper.sh ~/InterestingFile.cpp" --preserve-merges 0123ABCD 


$ cat ~/helper.sh 
#!/bin/bash 
TIMESTAMP=`git show -s --format=%ct HEAD` 
cp $1 /tmp/AllVersions/${TIMESTAMP} 


$ ls -1 /tmp/AllVersions # here are the files finally 
1499951860 
1500038126 
1500040256 
1500363092 

答えて

1
git rebase -i --exec "cp ~/InterestingFile.cpp /tmp/AllVersions/$(git show -s --format=%ct HEAD)" --preserve-merges 0123ABCD 
+0

サブシェルは、 '()'私の問題を解決しました。 –

関連する問題