Hi Avery, Thanks. I solved it a slightly different but hopefully equivalent way: Create a new branch named master locally, and merge the changes from trunk into it (I don't think any merge was needed as it would be a copy of trunk). Push master. From the git svn repo, git push -f origin, then git pull in the local repo and git merge trunk (the current branch is master). Ricky. -- Ricky Clarkson Java and Scala Programmer, AD Holdings +44 1928 706373 Skype: ricky_clarkson Google Talk: ricky.clarkson@xxxxxxxxx Google Wave: ricky.clarkson@xxxxxxxxxxxxxx On 4 May 2010 17:34, Avery Pennarun <apenwarr@xxxxxxxxx> wrote: > On Tue, May 4, 2010 at 7:43 AM, Ricky Clarkson <ricky.clarkson@xxxxxxxxx> wrote: >> I have a git repository we'll call the git svn repo, in which I only >> perform git svn fetch and git push bare. >> >> bare is a bare git repository, which I push to from a local >> repository. The mistake I've been making is to push to the branch >> 'trunk' in bare, from my local repository. The reason this is a >> mistake is because git push bare from the git svn repo also pushes to >> there. >> >> Today I've been forced to learn of my mistake, as I cannot push from >> the git svn repo without possibly losing commits. It turns out (which >> is probably obvious to you all) that I should have been pushing to, >> say, bare's 'master' branch instead of its trunk one. >> >> I don't intend to push back to svn from any of these repos, but I >> would like to be able to continue pulling changes from svn at least >> for the time being. What should I do? > > If you don't intend to push back to svn, then life is relatively simple. > > First, on your PC where you've been making other commits, rename the > trunk branch to master and push that: > > git branch -m trunk master > git push bare master > > Then delete the 'trunk' branch on bare, and re-push it from the git svn repo: > > git push bare :trunk > git push bare trunk > > And probably you'll go back to your PC and merge the latest trunk into > your master: > > git pull bare trunk > # resolve any conflicts > git push bare master > > Have fun, > > Avery > -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html