0

我的一个“遗留”系统使用 svn(例如 svn co https://github.com/user/repo/trunk)从 GitHub 签出代码。

是否有 GitHub API(或命令)可以用来将 svn 分支/修订版映射回 Git sha?

我知道 git-svn 和 find-rev,但据我所知,您首先执行“git svn clone ...”,然后执行“git svn find-rev ...”。我不想检查整个回购只是为了查找修订。

4

2 回答 2

1

我在这里找到了答案,

https://help.github.com/articles/support-for-subversion-clients#other-tricks

总之,你可以这样做,

$ svn propget git-commit --revprop -r 1000 https://github.com/rails/rails/trunk
480150e5fb73f1a6a23bb08fdf9a537ccbd6f60d
于 2013-09-19T17:11:44.437 回答
0

正如 zerkms 已经评论的那样,您可以为此使用“git ls-remote”:

git ls-remote <remote>

这将列出指定遥控器的所有分支。如果你在 git repo 中调用,你可以给命令一个配置的远程(例如origin),或者你可以给它一个远程的 uri(例如 'ssh://user@host:port/path/to/repo ')。

如果你只想要一个特定的分支(或标签),你可以给它额外的参数:

git ls-remote <remote> master

这只给你远程分支'master'的sha。

另外,请查看手册以git ls-remote获取更多信息:

man git-ls-remote
于 2013-09-19T07:38:14.387 回答