Re: [ANNOUNCE] git-svn - bidirection operations between svn and git
- From
- Eduardo Pereira Habkost <ehabkost@mandriva.com>
- Date
- Feb 16, 2006, 13:42 UTC
- Message-ID
- <20060216134248.GC4271@duckman.conectiva>
- In-Reply-To
- <20060216073826.GA12055@hand.yhbt.net>
On Wed, Feb 15, 2006 at 11:38:26PM -0800, Eric Wong wrote:
> Hello, I've written a simple tool for interoperating between git and > svn. I wrote this so I could use git to work on projects where other > developers use Subversion. I really hate using svn, but some projects I > work on require it, and svk isn't nearly as fast nor simple as git.
Great, I was doing some testing with git-svnimport for this, but I missed a tool to automatically commit to svn what I have in my GIT tree.
Show 5 quoted lines
> > git-svn does not replace git-svnimport, git-svnimport handles branches > and tags automatically, but is too inflexible about repository layouts > to be useful for a good number of projects I follow, and of course > git-svnimport can't commit to Subversion repositories :)
I am already using git-svnimport to keep a "mirror" of some subversion repositories, here (automatically udpated on crontab). Do you plan to allow "integration" with repositories that are just clones of git-svnimport'ed repositories?
I plan to keep using git-svnimport and the standard git tools to work using the "svn mirror on git" as the main repository, but I plan to use "git-svn commit" to commit to the SVN repositories. I want this "commit tool" to not affect the current repository in any way, just like git-push: only send the commits to the remote repository and don't change anything in the local repository.
However, it seems that "git-svn commit" does some tasks assuming we are on a "git-svn aware" repository (e.g. the "resyncing" just after the commit). Would you accept patches to allow using "git-svn commit" to commit changes from any GIT repository (i.e. not "svn-git aware" repositories) to any SVN repository, just like "git-push" would work for a GIT repository?
However, I am not sure if the easier way would be changing git-svn to do this for me or writing a different script just for this task.
Show 12 quoted lines
> > git-svn only cares about a single branch/trunk in SVN[1], but you can > use as many branches in git as you want. This makes it much easier to > use and allows it to handle just about any repository layout, not just > those recommended in the SVN book/developers. > > Although importing changesets from SVN is mostly a linear affair, > committing to SVN is the opposite. You may commit git tree objects in > any order you want. It simply clobbers the existing svn tree as > 'git-checkout -f' would, but tags file renames/copies carefully so users > on the SVN side can see them. You can even do some wacky things with > patch reordering.
Good, this is what I expect to be able to do when commiting to svn.
-- Eduardo