gpt4 book ai didi

BFG 之后的 git 笔记?

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

我从 SVN 迁移到 git,并且在每个 git 提交中都有一个注释引用 SVN 修订号。 repo 导入后,我使用 BFG repo 清理器从二进制文件和其他垃圾中清理 git 历史记录。不幸的是,现在我在输入 git log 时看不到注释。我想 BFG 忘记更新对注释提交的引用。BFG 留下一份 *.txt 报告,其中包含以下格式的旧对象 ID 到新对象 ID 的映射:

0001b24011381e8885683cd1119ba4cb077fa64b c81149b1b52b9e1e1767d6141f292891d715edb5
00024eecdc31f2f6e67018f7d6f00e7c1ad03f1f 326ee3b508e3dd2934ec1f50069195f86ea1a1c7
00028e04dcc2d59bd835b447bd3a207ae481696c 3d18e9b9d3336e59d62093200b81603ffefcc747

你能建议一些脚本来快速修复给定上述映射的注释吗?

PS:我几乎可以肯定问题是由未更新的 refs 引起的,因为当我在第二位键入 git notes 时,我可以看到在 BFG repot object- 中被认为是旧的 refs id-map.old-new.txt

最佳答案

我编写了以下 bash 脚本来从旧对象转移我的笔记。该解决方案在单线程中很慢,不确定并行运行多个 git notes 命令是否安全。

while read string; do
hashesArray=($string)
git notes copy ${hashesArray[0]} ${hashesArray[1]}
git notes remove --ignore-missing ${hashesArray[0]}
done <object-id-map.old-new.txt

关于BFG 之后的 git 笔记?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40721295/

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