混帐的最新版本(> = 1.7.9)签署支持个体GPG提交。
是否有可能追溯签署树中的所有提交?
混帐的最新版本(> = 1.7.9)签署支持个体GPG提交。
是否有可能追溯签署树中的所有提交?
追溯签订树中的所有提交?
是:添加一个标签,你会签署 。
这实际上是最佳的选择 ,当涉及到签署提交:签署所有设置他们通过一个标签,而不是单独签约每一个。
请参阅“ 如何获得推进的信息中后收到钩? ”。
注(更新可能2017)是唯一的Git 2.13.x / 2.14(Q3 2017)将彻底解决这一签名过程,因为“ git cherry-pick
”和序机器的其它用途和处理不当尾部块,其最后一行是不完整线。
这已被固定,使得一个额外的注销等被完成现有不完整线之后加入。
见提交44dc738 (2017年4月26日)由乔纳森·谭( jhowtan
) 。
(通过合并JUNIOÇ滨野- gitster
-在提交6ebfa10 ,2017年16月)
sequencer
:添加页脚之前添加新行当遇到一个提交消息中不换行结束之后,定序并不确定是否一个空行应该被添加之前完成线。
这将导致“(cherry picked...
”并签字线有时会出现在同一行提交信息的最后一行 。这种行为被引入提交967dfd4 (“:使用拖车的拖车布局序”,2016年11月29日)。 然而,承诺的复归不能完全解决这个问题:在这之前提交,符合标准的页脚被认为是不符合要求的由
has_conforming_footer()
如果没有终止换行符,结果不但符合和不符合要求的页脚是同等对待时,他们不应该。解决这个问题,无论是对符合和不符合页脚,并在这两个
do_pick_commit()
和append_signoff()
由总增加一个新行到提交消息,如果它不能在一个检查合格页脚之前结束 。
从签名git commit
的--gpg-sign
(又名-S
)选项是用于生成用于标识所述提交SHA1哈希数据的一部分。 所以追溯签名提交需要改变的ID的所有提交到该做。
如果你真的想你也许可以做的东西git filter-branch
,但它会更好,只是签署新的提交。 由于所有祖先的提交ID会影响将由任何新签署承诺,这将仍然允许旧的提交GPG验证通过新的方式的数据,签字提交。
你可以尝试从点创建一个新的分支,你要开始你的签名提交。 我最近做了,对我的机器上创建得不到我的私人密钥的分支:
# git checkout -b new-branch <last-signed-commit>
# git cherry-pick <first-unsigned-commit>
# git checkout unsigned-branch
# git rebase new-branch
这需要你自己的Git配置为自动登录你的提交,并有明显的不应该过多的合并提交,其他底垫会显得怪异。 如果有疑问,樱桃采摘您的提交; 各挑提交将被签署。