有可能让Git意识到SVN修订版吗?

sne*_*neg 7 svn git git-svn

使用git-svn时,Git将SVN修订与个别提交相关联.

大多数其他团队成员在需要审核代码时引用SVN修订版.是否有可能让Git'意识到'SVN修改并隐式将它们转换为Git哈希?或者有没有办法公开Git提交和SVN修订之间的映射,这样我就可以自己编写一个可以利用它的工具?

理想情况下,我想做的事情如下:

$ git diff r12000 e0a4f09 # r12000 is SVN revision, e0a4f09 is Git hash
Run Code Online (Sandbox Code Playgroud)

小智 15

git-svn工具有一个转换选项,用于通过SVN修订版或其他方式查找git对象.此选项可以使用如下:

git svn find-rev rSVNID
Run Code Online (Sandbox Code Playgroud)

因此,您的diff命令可能是:

git diff $(git svn find-rev r12000) e0a4f09
Run Code Online (Sandbox Code Playgroud)

与其他答案相反,这也适用于分支和标签.

有关详细信息,请参阅此命令的git-svn联机帮助页.