From: Albert Dvornik Date: Wed, 05 Jan 2011 06:22:35 GMT Subject: "git svn fetch" on a branch is broken after "git svn reset" Message-ID: The documentation for git svn claims that this should work: git svn reset -r2 -p git svn fetch But when I tried it (using an SVN tree that has recent commits only in a branch, not the trunk), it didn't work correctly. "fetch" grabbed just the latest version from SVN, and not all revs from to the head! Note that it matters that this is in an SVN branch-- if I repeat the test using revs in the trunk, everything works as expected. Specifically, what I did was this: git co -b testing refs/remotes/test-branch git svn fetch git svn reset -r 850 # does correctly rewind to rev 850, undoing commits in test-branch git svn fetch # oops, only fetches the *head* revision (rev 856) from SVN! # In refs/remotes/test-branch, SVN rev 850 is now followed by 856! I then tried this again, but between reset and fetching I manually edited .git/svn/.metadata and moved back the *-maxRev versions to 850; after doing this, the fetch does the right thing. I tried examining the logic in git-svn.perl to figure out why this happens and why it would be affecting a branch but not the trunk, but I didn't get very far. I can reproduce the problem on Linux (git version 1.7.2.1) and Windows (Git for Windows version 1.7.3.2.msysgit.0.4.ga4f3f or Cygwin git 1.7.2.3). Thoughts? --bert