【发布时间】:2012-10-06 03:20:36
【问题描述】:
如果 SHA 是由提交中的数据生成的,那么 Git 会知道两个提交何时相同。
这将解决在变基和生成实际上相同的提交时出现的问题,但 Git 认为它们是不同的,因为它们具有不同的 SHA。
这个逻辑是正确的还是我遗漏了什么?
【问题讨论】:
-
SHA 根据定义不是随机的。这是其输入的确定性函数。如果不同,则意味着输入也不同。
-
commit 中的数据用于生成树的 SHA。如果你在提交的 sha 上使用
git cat-file -p sha,你会看到树的 sha,它完全由内容决定。
标签: git version-control sha