如果我挑选一个不做任何更改的提交,但我希望它仍然提交(以便提交的审计跟踪与另一个项目一致),我收到消息:
$ git cherry-pick 696abcb
无需提交,工作目录清理 之前的樱桃选择现在是空的,可能是由于解决冲突。 如果您仍想提交,请使用:
git commit --allow-empty
根据手册页,我可以使用--allow-empty
的樱桃挑选。但这会产生相同的信息:
$ git cherry-pick --allow-empty 696abcb
(与上述相同的信息)
这是一个错误吗?我完全误解了这个选项的意思吗?
答案 0 :(得分:2)
由于没有什么可以挑选的,所以没有任何工作可以完成。您可以做的唯一可能是创建一个空的提交。 指示您运行git cherry-pick --allow-empty
,而不是指示您运行:
git commit --allow-empty
请注意 commit 命令。默认情况下,git不会创建没有更改的提交。
(git质疑创建空提交的价值,只是为了在历史记录中包含提交消息 - 坦白说 - 但是如果你需要它来进行审核,那么就是这样做的方法。)
答案 1 :(得分:1)
使用Git 2.22(2019年第二季度),您无需运行git commit --allow-empty
。
在将控制权交还给用户以寻求解决冲突步骤的帮助后,“ git cherry-pick --options A..B
”没有兑现最初收到的选项,该选项已得到纠正。
请参见commit 6860ce5的commit 36b0503,commit f59199d,Phillip Wood (phillipwood
)(2019年3月13日)。
(由Junio C Hamano -- gitster
--在commit d2dba18中合并,2019年4月25日)
cherry-pick --continue
:记住选项在为解决冲突而停止采摘时,请记住
--allow-empty
,--allow-empty-message
和--keep-redundant-commits
。