Subject: Re: submodule add does not consider git svn

From: Jens Lehmann <[email-masked]>
Date: Sun, 24 Jul 2011 21:44:39 +0200

Am 24.07.2011 10:00, schrieb rupert THURNER:
> On Sat, Jul 23, 2011 at 20:19, Jens Lehmann <[email-masked]> wrote:
>> Try the following instead:
>>
>> git init test
>> cd test
>> git svn clone https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/pkg/GeoIP/trunk GeoIP
>> git submodule add ./GeoIP      # Add existing git svn repo GeoIP in place
>> cd GeoIP
>> git svn rebase
>>
>> Of course when you push that submodule somewhere else using git I expect
>> that "git svn rebase" won't work when you clone that somewhere else, just
>> like it happened in your example.
> 
> how would the standard git case work, to continue with the example above:
>   git clone test test1
>   git clone test1 test2

I don't think you should clone "test" directly, but rather push that to
a bare repo or git server so others can clone from there. And as the
GeoIP submodule is its own git repo, it has to have someplace to be
pushed to too. That url must be configured in the .gitmodules file and
you have to call "git submodule sync" before you commit and push the "test"
superproject and push the GeoIP submodule so others can use "git submodule
init" and "git submodule update" in their "test" clone to get the submodule
too.

The "test" repo you set up with "git svn clone" could be where you integrate
changes coming from svn (git svn people please stop me if this is rubbish,
I'm just making assumptions here!) which are then pushed to the shared git
repo so your coworkers can fetch it from there.

> if then sombody changes test, and i want to get these changes into
> test2, without involving test1, and rebase what is there?

I'm not sure I understand what you mean here. But you can control what to
check out using different branches for different purposes.