git - 如何在交互式 rebase 压缩后保留提交 gpg 签名?

标签 git version-control git-rebase gnupg

当我想通过交互式 rebase 压缩一些提交时:

git rebase -i HEAD~3

然后:

pick cbd03e3 Final commit (signed)
s f522f5d bla-bla-bla (signed)
s 09a7b7c bla-bla (signed)

# Rebase c2e142e..09a7b7c onto c2e142e
...

尽管所有这些提交都具有相同的签名,但最终提交没有 gpg 签名。交互式 rebase 压缩后是否可以保留提交的 gpg 签名?

最佳答案

如 Cupcake 所述,您无法保留未压缩提交中的旧签名,但如果您像这样 rebase ,您可以签署新的压缩提交:

git rebase --interactive --gpg-sign=myemail@example.com HEAD~4

添加 --gpg-sign=myemail@example.com 作为参数将签署最终压缩的提交。

关于git - 如何在交互式 rebase 压缩后保留提交 gpg 签名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18874281/

相关文章:

git - git 上的每个目录权限

git - 创建新的 GitHub 帐户后无法从私有(private)存储库克隆/获取

git - 本地比远程 origin master 提前 5 次提交,我如何查看将上传的内容?

Git rebase 分支与所有父分支(或依赖子分支)

GitLab 显示计算机名称 + 路由器名称作为提交者名称

git - git 能否找出要 merge 的分支有过时的更改?

windows - 通过LAN共享Git存储库的最佳简单方法

version-control - 多个 Perforce 工作区有什么好处?

git - 如何在 git rebase 期间通过哈希识别冲突提交?

git - 交互式 rebase 后删除了空提交,即使使用了 --keep-empty