From: Troy Telford Date: Fri, 17 Nov 2006 21:17:41 GMT Subject: Re: git-svn bug? Message-ID: In-Reply-To: <20061117085509.GA29644@localdomain> On Fri, 17 Nov 2006 01:55:10 -0700, Eric Wong wrote: > dcommit expects to be run on a git-svn fetch-ed HEAD that is linear > superset of remotes/git-svn. That is: remotes/git-svn..HEAD should > (ideally) contain no merges, and no root commits. git-svn currently > does no checking for root commits, but it should. > > This commit is missing the git-svn-id: line at the bottom. If you > simply left it out (private svn repository info), can you check that the > URL in this line is actually for the SVN repository you want to commit > to? I didn't remove anything, but I did double-check and the URL is correct. But the following may shed light on why there is no git-svn-id anywhere: IIRC, this is how my current repository came to be (from the very beginning): 1.) Way back when, before I even started on the project, it started life as a CVS repository 2.) Was converted from CVS -> SVN in early '05 (pre-git) 3.) I converted from SVN->git in Nov/Dec '05 (using git-svnimport. I'm not sure git-svn was available at the time.) 4.) The svn repository is still around, and I need to interoperate with the svn repository on occasion. I read about the new (at the time) 'git-svn', and decided to give it a try. 5.) I start with my pre-existing git repository, running: git svn init git svn fetch git checkout -b master svn git rebase remotes/git-svn > It seems like your usage of dcommit would actually cause the issue > you're experiencing to be triggered on the dummy repository, and not the > real one. My other guess would be that you somehow merged commits from > your dummy svn repo into your master branch. I need to work on being more clear; sorry about that. Here's what I did with my 'dummy' repository 1. create a new (empty) svn repository 2. imported it into a new git repository using git-svn 3. added a few files that were just sitting in $HOME, then modified them, removed some, added others, etc. (using both git-svn and subversion) 4. verified everything was working as I expected it to. (and if not, figure out why I was wrong). My 'dummy' repo was imported using git-svn. My 'real' repo was imported using git-svnimport. Having not read any of the code, I'm just taking a wild guess; but is it reasonable to say that since the repository was originally imported to git using git-svnimport (rather than git-svn), git-svn doesn't have some of the data it needs to push to the remote svn repo? Would it be reasonable to use git-svn to import the SVN repository into a new git repo, and then rebase from the old git-svnimport'ed repo into the new git-svn imported one? (did that even make sense?!?) --