gpt4 book ai didi

混帐 "discrepancy": `git diff` does not take commit messages into consideration but SHA-1 generation takes commit messages while computing SHA-1

转载 作者:太空狗 更新时间:2023-10-29 13:56:07 25 4
gpt4 key购买 nike

我有两个 git 分支 b'b" 具有完全相同的 SHA-1 和因此内容。我提交 b ' 并在提交时,我使用 -x 应用 cherry-pick 而不是 mergerebase单个提交到我的 b" 的选项。

我的 b" 提交消息中有一行说明正在应用 cherry-pick。这是我的 2 个分支之间的唯一区别。因此, b'b"SHA-1 是不同的。但是,如果我 diff 两个分支都没有变化。

很容易查找 SHA-1 并得出分支相同的结论,而不是通过diff分支来确定

我想知道为什么 git 不是“一致的”,因为 git 应该在计算 SHA-1 时排除提交消息被包含在内还是 git diff 应该比较和对比提交消息?

最佳答案

git diff 是关于实际内容而不是元数据的变化。考虑从另一个分支中挑选提交的用例。很多时候,您想知道两个分支中是否存在相同的内容,而不是两个分支是否具有相同的提交。这就是 git diff 发挥作用的地方。

提交哈希当然是针对提交的,并且会考虑元数据。

查看两个分支差异的实际方法是 git diff。如果两个分支的头部散列相同,则它们确实具有相同的内容。但如果他们不这样做,他们不一定需要有不同的内容。

您还可以查看 git log -p 命令,看看它是否适合您的目的。

关于混帐 "discrepancy": `git diff` does not take commit messages into consideration but SHA-1 generation takes commit messages while computing SHA-1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18257015/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com