On Tue, Jun 30, 2009 at 8:23 AM, Bruno Harbulot wrote: > I participate in a few open-source projects for which I provide patches > sometimes, but most of these projects use Subversion. git-svn is very > convenient for trying out patches without interfering with the main branch > (so as to submit them when they're ready). I presume many 'git svn' users do > something like this too. > > However, I'd like to keep multiple copies of this repository (on a few > machines, including one on a backup server) with the appropriate SVN > metadata. I'd also like to be able to do 'git svn fetch' on only one of > these cloned repositories (perhaps via crontab on the server) and to be able > to push/pull this SVN metadata along with the commits between the cloned git > repositories. > > > Is there a recommended way to do this? > > > I have found 3 ways of achieving this, but none of them seem ideal: > > 1. Copying the entire cloned repository as regular files and doing 'git svn > fetch' regularly on each copy. > 2. Transferring the SVN references by hand. > 3. Using 'git clone --mirror' (only works with --bare option). I use 4. Set up git remotes by hand to populate svn remotes directly. - On 'backup-server': git svn clone -s svn://upstream/project crontab -e # run git svn fetch periodically - On 'machineX': mkdir project cd project git init git remote add origin git://mirror/project git config --add remote.origin.fetch refs/remotes/*:refs/remotes/* git fetch git svn init -s svn://upstream/project git reset --hard trunk git svn rebase Peter Harris -- 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