抓住svn HEAD git提交号码?

时间:2013-07-25 19:07:31

标签: git git-svn

在常规git中我可以运行

git rev-parse HEAD

获取git HEAD修订号。我怎样才能获得svn HEAD修订版号?

我知道我可以通过使用git-svn-id查看最后一次提交的git日志来手动获取它。 另外,查看日志漂亮格式的手册有一种获取引用名称(%d)的方法,在HEAD svn提交的情况下,它显示为git-svn。

感谢。

2 个答案:

答案 0 :(得分:3)

这有点像黑客,我欢迎改进,但这是我到目前为止所得到的。

我在git config中添加了一个别名:

svnhead = log --grep=git-svn --pretty=format:'%h' -n 1

现在我可以打电话了

git svnhead 

返回短git提交哈希,我可以将其传递给

git rebase -i $(git svnhead)

例如,从svn head commit中交互式rebase所有内容。

2013年9月23日编辑

我最近意识到这可以使用rev-parse来完成:

git rev-parse master

如果您的主分支跟踪SVN仓库,或

git rev-parse git-svn 

答案 1 :(得分:2)

git svn find-rev HEAD将为您提供SVN修订号

git svn find-rev r$(git svn find-rev HEAD)将为您提供该修订版的git commit hash。