2014-10-20 55 views
0

我有一個由git rev-list輸出的修訂的具體列表,現在我想爲該列表中的每個修訂生成一個補丁文件。我想通過每個修訂到git format-patch -1。但是,這會生成名爲0001-blah-blah.patch的修補程序文件。我不想format-patch爲我編號;我只是想生成blah-blah.patch如何讓git-format-patch生成沒有編號的單個補丁文件

有沒有辦法使用git format-patch獨自完成這項工作?或者是補丁生成後重命名文件的唯一方法?

回答

1

我要工作圍繞它使用這段代碼:

git rev-list ... | 
xargs bash -c ' 
    let "n = 0" 
    for sha; do 
    printf -v name "%04d-%s.patch" "$n" "$(git show -s --format=format:%f "$sha")" 
    git format-patch --stdout -1 "$sha" > "patches/$name" 
    let "n++" 
    done 
' bash 
+1

Upvoted的看到它通過,但看起來它會一直容易,只需使用'rename'。 :) – 2014-10-21 07:04:46

+0

嗯,我沒有看到太多的好處。生成一個零擴展的4位數字,替換'format-patch'輸出文件名中的0001- ... Meh ... – Jeenu 2014-10-21 07:15:16