On Thu, Feb 26, 2009 at 8:23 PM, David Cournapeau <cournape@gmail.com> wrote:
On Fri, Feb 27, 2009 at 9:08 AM, Pauli Virtanen <pav@iki.fi> wrote:
Fri, 27 Feb 2009 00:48:00 +0200, Stéfan van der Walt wrote:
2009/2/27 Pauli Virtanen <pav@iki.fi>:
If you want to discuss Git, you can probably steal from here:
Ah, yes, good reminder!
Could you give me a quick rundown of why you used --mirror earlier on when adding the remote?
The --mirror option adds
fetch = +refs/*:refs/* mirror = yes
to [remote "origin"]. So one wouldn't need to edit .git/config manually.
However, the --mirror has another effect which I missed earlier: it makes the remote consider all heads its own, so that "git remote prune origin" would drop all branches, including local ones. Similar issue with "git fetch". So I think it's not the correct solution.
***
But all of that is moot now. I finally figured out that I must push to the mirror with
git push git@github.com:pv/numpy-svn.git \ +refs/remotes/*:refs/heads/* +master
Then it can be cloned simply with
git clone --origin svn git://github.com/pv/scipy-svn.git
And "--origin svn" only because we want svn/trunk instead of origin/trunk. Also git-svn can be activated:
git svn init -s --prefix=svn/ http://svn.scipy.org/svn/scipy git svn rebase -l
And as a bonus, the SVN branches are visible on Github!
Ah, nice, I did not find a way to do this - I used a dirty script to get local branches and update them instead. One thing which is still annoying is that tags are considered as branches - but I guess there is no way around it, since svn does not have any tag concept.
Btw, I guess you already know it, but if you need to clone the git repository (for example David's) and then you would like to update it using git-svn with the latest svn from scipy, here is the howto: http://subtlegradient.com/articles/2008/04/22/cloning-a-git-svn-clone E.g. basically: git svn init http://macromates.com/svn/Bundles/trunk/Bundles/Ruby.tmbundle -R svn cp .git/refs/remotes/origin/master .git/refs/remotes/git-svn git svn fetch Ondrej