Committer un historique linéaire de Git dans SVN

Issu de commit-a-linear-git-history-to-subversion (traduction directe)

Mise à jour : Deskin a souligné qu'il y a un commit pour git qui fixe ce problème en ajoutant l'option –root à la commande rebase –onto

Update: Deskin points out that there is a commit to git that fixes this problem by adding a –root option to rebase –onto. So when you get a new build of git, you can probably ignore everything here.

The other day I needed to commit a plain old (git-svn free) git repository to subversion. Why, you ask? I had been working on a small project at work in my own little git repository and needed to get it into our official version control. I could, of course, just commit the latest version that I had, but that would not record any of my git commit history in subversion. I needed a better option. git-svn can save each individual commit of a linear commit history to subversion, so I figured I could just apply git-svn metadata to my repository and go from there.

This post is a bit long, as I explain the whole process for the solution. If you’re interested in just the solution, scroll to the bottom.

I’m going to create a small git repository for illustrative purposes:

bazaar/git_commit-to-svn.txt · Last modified: 2010/01/12 13:29 (external edit)