对待生命,不妨大胆一点,因为我们终将失去它

特殊的 Git hash

今天AI写了一段神奇的代码:

parent = commit.parents[0] if commit.parents else self.repo.tree("4b825dc642cb6eb9a060e54bf8d69288fbee4904")

功能是获取某个git提交的上一个提交,如果没有则返回4b825dc642cb6eb9a060e54bf8d69288fbee4904提交。
刚开始看到硬编码的hash以为又是ai乱写的,所以询问了下ai,才得知:

  • 4b825dc642cb6eb9a060e54bf8d69288fbee4904是一个特殊的 Git hash,代表一个空树(empty tree)
  • 这个 hash 是固定的,在所有 Git 仓库中都是一样的
  • 当我们需要比较第一个 commit 的变更时,就需要和这个空树比较,因为第一个 commit 之前没有任何内容

我在本地的多个git repo中测试了,还真是一个有效的hash,均返回空,神奇


Comments

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注