Will this git-svn workflow work?

git, git-svn

Solution

Yes, that's essentially what I do when working with Subversion repositories. The key to the simplicity of this is to keep the Git branches local and not try to map them to Subversion branches at all.

I just noticed that you linked directly to my answer in that other question. So perhaps I should explain more. :)

I sometimes do the conflict resolution in the topic branch if I expect some conflict work. Otherwise, if I don't expect many conflicts, I might merge to master first before doing the `git svn rebase`. It doesn't matter much.

The key point is that Git is so flexible that the minimum workflow is very simple. You've added a topic branch to that; I've added rebasing on the topic branch.

Problem

I'm experimenting with `git-svn`, and am trying to come up with a relatively non error-prone workflow. I think the following should work, and is pretty simple, but I've seen people using far more complicated workflows, so I want to see why. - `(master) $ git svn init <path>` - `(master) $ git svn fetch` - `(master) $ git svn rebase` - `(master) $ git checkout -b topic-branch` - `(topic-branch) $ # HACK HACK COMMIT HACK HACK HACK COMMIT HACK COMMIT` - `(topic-branch) $ git checkout master` - `(master) $ git merge topic-branch` -- this is a fast-forward merge, so no merge commit - `(master) $ git svn rebase` - `(master) $ # fix conflicts` - `(master) $ git svn dcommit` - `GOTO 4`

Original source

Related problems