gpt4 book ai didi

git - 所有 svn 修订号的映射 <=> git SHA-1 提交哈希

转载 作者:太空狗 更新时间:2023-10-29 14:28:03 28 4
gpt4 key购买 nike

git-svn 需要重建它的内部映射时,它会输出想要的信息到 STDERR:

Rebuilding .git/svn/refs/remotes/origin/trunk/.rev_map.XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
r38601 = 28d3a624c5c96db9a1f45d8f261a9b0de1f6f288
r38652 = 74c55b8dff798e5ae1bc2ad00d8ec6eee4f2646b
r38744 = eb457e1949ecf854816ba9cf64b4bace710a7302
r38745 = 5bca99a37fbc6db72d2d50a75301185f4297926c
(...)

不幸的是,文件 .git/svn/refs/remotes/origin/trunk/.rev_map.XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX 是二进制的,因此不容易解析。有没有办法让 git-svn 通过特定命令输出上述信息?顺便说一下,我在 git 2.7.0 上。

编辑:我知道 git svn find-rev,但这只会让我找出 的 SHA-1 提交哈希单一修订,我必须提供特定的 SVN 修订。不过,我想要得到的是所有修订 的映射。最好不要强制我通过或使用外部数据源(即 SVN 存储库)来提供 SVN 修订作为输入。最优选的是,不提供任何信息,因为在 git-svn 构建其修订映射之后,此信息存储在存储库中——或者不是吗?

最佳答案

获取所有 SVN 修订版:

git config --add svn-remote.<Remote>.url <SVN URL>
git config --add svn-remote.<Remote>.fetch :refs/remotes/<Remote Name>
git svn fetch <Remote>

映射修订号 <=> git SHA-1:

git checkout remotes/<Remote Name>
git svn log --show-commit --oneline

输出:

r50 | 77c9acf | "SVN Commit message"
...
r1 | 84e6c49 | "SVN Commit message"

关于git - 所有 svn 修订号的映射 <=> git SHA-1 提交哈希,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35481861/

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