git - 审阅者可以将他们的签名添加到特定的 git 提交吗?
问题描述
如果我想确保 git 存储库中的每个提交都经过作者和第二(甚至第三)人的审查,是否可以多次签署 git 提交?
(如果不是,我想下一个最好的事情是添加后续的、空的、签名的提交,但这似乎有点混乱)。
解决方案
提交的哈希 ID 完全取决于提交中的每个字节,包括任何签名(GPG 或其他)。你可以对一个单独的标签进行 GPG 签名——一个带注释的标签对象,通过提交的哈希 ID 引用提交——每个审阅者都可以这样做,但是如果要将审阅者的 GPG 签名添加到提交中,则结果是一个新的以及具有新的不同哈希 ID 的不同提交。
没有新签名的现有、现已过期的提交继续存在于其现有哈希 ID 下。如果您获得所有其他名称- 主要是分支和/或标签名称 - 停止使用该提交的哈希 ID,并且不要使用任何将该提交作为其父提交的提交,旧的提交最终将被垃圾收集。这是可以实现的另一条路径:基本上每个人都会进行一些一次性提交,以便构建具有所有签名的最终最终提交。随着更多签名的提交被添加到存储库中,参与其中的每个人都会丢弃他们丢弃的早期提交(只是不再使用它并让 Git 最终删除它)并且当提交的最终版本存在于其最终哈希 ID 下时,每个人都可以继续添加新的提交。
这是一个相当繁重的过程。考虑其他一些过程可能会更好,例如签署标签或使用git notes
,或者您自己建议的“空”(没有区别,但在他们的消息中签名)提交。
推荐阅读
- node.js - 在高山运行 curl 需要很长时间才能开始
- android - getEncryptedData(String) 调用效率低下的新 String(String) 构造函数 - Findbugs
- swift - 是否可以用不同的变量类型覆盖父类常量变量?
- heroku - Sinatra 错误(捆绑程序:加载命令失败:rackup)
- android - 在 ARCore 中渲染平面时自定义纹理 - Android
- .htaccess - Htaccess 将一些具体的 URL 重定向到主页
- reactjs - 获取和存储令牌时如何使用 react-navigation 导航到另一个屏幕
- python - 两个数据框,如果 column1 值是 == 其他数据框的列,则打印第 2 列
- ios - 如何在加载之前将查询参数嵌入到 webview 的链接页面 url 中?
- vba - 错误处理程序:不阻塞错误