我有类似的情况question .目前这个命令完美地向我展示了我需要的所有提交:
git log --cherry-pick --oneline --no-merges --left-only branchB...branchA
现在,我想创建一个补丁文件,其中包含上述命令中显示的每个提交。我该怎么做?
最佳答案
试试这个。我希望现在还不算太晚。
NUM=1
for commit in $(git log --cherry-pick --no-merges --left-only branchB...branchA --reverse --pretty=tformat:"%H")
do
git format-patch -1 $commit --start-number $NUM
((NUM++))
done
--reverse
强制 git-log
以相反的顺序推送结果 - 从最早的到最新的,"%H"
它的格式只包含提交 sha1 哈希。哈希作为单个 (-1
) 提交提供,以从中创建补丁。 --start-number
递增值会导致以正确的顺序创建补丁文件。
关于git - 为日志输出中的每个提交创建一个补丁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33772399/