每个分支尖端的哈希值是否足以证明我的整个存储库的完整性?为了便于讨论,假设您必须将整个存储库提供给某人,让他们为所欲为,并确定他们是否更改了哪怕是 1 位数据。你会怎么做?
如果我要推送到上游的裸存储库,这是我需要保证的所有数据,我可以在以后验证整个存储库的完整性吗?
git ls-remote --heads origin
fcce961b46784fae13be8a30c2622ddd34d970ec refs/heads/develop
9da7bb692a72235451706f24790a3f7a100a64e2 refs/heads/feature-netty-testing
86020c50d86691caecff4a55d3b1f2f588f6291d refs/heads/javafx-testing
871d715e5c072b1fbfacecc986f678214fa0b585 refs/heads/master
7ed641c96d910542edeced5fc470d63b8b4734f0 refs/heads/orphan-branch
那来自我用来玩的沙盒存储库。这orphan-branch
是我故意孤立的分支,如此处所述。一切对我来说似乎都是正确的。列出了我期望的所有分支,但如果每个分支提示的 SHA 都是我所需要的,我并不肯定。我错过了什么吗?
标签呢?那些没有合并到任何东西就被删除的分支呢?
更新
正如一些评论中指出的那样,除了可能需要考虑的头部之外,可能还有其他参考。例如,根据它们对您是否重要或您是否正在签署标签,可能有用tags
。notes
对我自己来说,我主要对提交的内容感兴趣,这就是我接受 VonC 回答的原因。