如何让git-format-patch生成一个没有数字的补丁文件

时间:2014-10-20 14:40:55

标签: git

我列出了git rev-list输出的特定修订列表,现在我想为该列表中的每个修订生成一个补丁文件。我想把每个修订版都传递给git format-patch -1。但是这会生成名为0001-blah-blah.patch的补丁文件。我不希望format-patch为我编号为一个补丁;我只是希望生成blah-blah.patch

有没有办法单独使用git format-patch完成此操作?或者是生成补丁后重命名文件的唯一方法吗?

1 个答案:

答案 0 :(得分: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