git 历史可以伪造吗?
例如,我正在考虑以下信息:
- 提交日期
- 提交内容
- 提交者身份
如果是:
- 有没有办法验证 git 存储库的内容或使其可验证?
- 如何知道 git 历史是否被修改?
最佳答案
您提到的所有字段都是用于识别提交的 SHA-1 的一部分。 因此,如果不创建新的提交就不可能更改这些字段。新的提交意味着,没有 git
实现会接受重写的提交来替代原始的,除非你强制它。
通常,当您有一个 git
提交 ID 时,它是到那时为止所有开发历史的加密散列,以及包括的所有作者身份信息。该数据的任何更改都将被检测到。
如果您想要额外的安全性,您可以使用 git commit -S
使用 PGP key 签署提交。
关于git - git历史可以伪造吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51840499/