我试图用Git钩子做一些奇特的东西,但我真的不知道怎么做(或者如果可能的话).
我需要做的是:在每次提交时,我想要获取其哈希值,然后使用此哈希值更新提交中的文件.
有任何想法吗?
在使用我的脚本从存储库重新编写子树历史后,我将其与git filter-branch ...在同一子树上执行的操作进行了比较.我看到初始提交有不同的sha1,虽然我期望它们是相同的(结果是这两个历史的所有提交都有不同的sha1).
git show --format=raw <commit-sha1>对两个提交执行a 会产生完全相同的输出(第一行除外,即commit <commit-sha1>引入结果).
对象文件完全不同,但由于它们是二进制文件,我无法找出根本原因.
假设所有git版本彼此一致,有什么可以解释为2个不同的sha1?
谢谢
在sha1(x)= x时找到x有多难?其中x是'c999303647068a6abaca25717850c26c9cd0d89c'的形式
我认为存在sha1碰撞的事实使得这成为可能,但是,找到一个例子有多容易(或者很难)?