Reputation: 1614
In regular git I can run
git rev-parse HEAD
to get the git HEAD revision number. How would I get the svn HEAD revision number instead?
I know I can manually grab it by looking at the git log for the last commit with a git-svn-id. Also, looking through the manual for log pretty-format there's a way to get the ref name (%d) which in the case of the HEAD svn commit shows up as git-svn.
Thanks.
Upvotes: 3
Views: 361
Reputation: 12616
git svn find-rev HEAD
will give you the SVN revision number
git svn find-rev r$(git svn find-rev HEAD)
will give you the git commit hash for that revision.
Upvotes: 2
Reputation: 1614
It's a bit of a hack and I welcome improvements but here's what I've got so far.
I've added an alias to my git config:
svnhead = log --grep=git-svn --pretty=format:'%h' -n 1
now I can call
git svnhead
to return the short git commit hash and I can pass it in to
git rebase -i $(git svnhead)
for example to interactive rebase everything from the svn head commit.
EDITED 9/23/13
I recently realized this can be done using rev-parse:
git rev-parse master
if your master branch tracks the SVN repo, or
git rev-parse git-svn
Upvotes: 3