threads / discuss / 21613

git svn fetch loses data

Subject: git svn fetch loses data

## tl;dr

11 messages between Nov 14, 2009 and Dec 11, 2009.

replies: 10people: 4as markdown or json

Victor Engmark· Nov 14, 2009, 17:07 UTC · lore
Hi all,

I've been trying to move from Subversion to Git for a couple days now, and I can't get git svn to get all my data. The progress so far is explained at <http://l0b0.wordpress.com/2009/11/14/n-way-git-synchronization-with-extra-cheese/>. git svn fetch doesn't report any errors, and goes through the entire repository as regular as anything, but at the end about half of the root directories are missing. Even the file modified by the last commit is not there at all. Any ideas why this is?

-- 
Victor Engmark
Sverre Rabbelier· Nov 14, 2009, 17:25 UTC · re: Victor Engmark · lore

Re: git svn fetch loses data

Heya,
On Sat, Nov 14, 2009 at 18:07, Victor Engmark <victor.engmark@gmail.com> wrote:
> but at the end about half of the
> root directories are missing.

Can you be more specific, what is the layout of your repository and which directories are missing?

/ -- trunk
  -- branches
  -- tags
  -- thirdparty
  -- private

If your repository looks like that, and 'thirdparty' and 'private' are missing, that's because git svn assumes that you're only interested in trunk, branches and tags by default.

-- 
Cheers,

Sverre Rabbelier
Victor Engmark· Nov 14, 2009, 19:29 UTC · re: Sverre Rabbelier · lore

Re: git svn fetch loses data

On Sat, Nov 14, 2009 at 6:25 PM, Sverre Rabbelier <srabbelier@gmail.com> wrote:
Show 12 quoted lines
> On Sat, Nov 14, 2009 at 18:07, Victor Engmark <victor.engmark@gmail.com> wrote:
>> but at the end about half of the
>> root directories are missing.
>
> Can you be more specific, what is the layout of your repository and
> which directories are missing?
>
> / -- trunk
>  -- branches
>  -- tags
>  -- thirdparty
>  -- private
> If your repository looks like that, and 'thirdparty' and 'private' are
> missing, that's because git svn assumes that you're only interested in
> trunk, branches and tags by default.
I'm not entirely sure which directories you mean - I've got none of
those, neither in the repository nor the working copy. One of the
directories missing in the top-level directory of the working copy is
"Linux", which contains my .bashrc and tens of other config files.
Which is really odd, because here are the last few lines of "git svn
fetch --revision 993:1879":
r1878 = 3fcec05426b59b0bad43b02cc3c367525d2c0b93 (git-svn)
	M	Linux/etc/cups/printers.conf
r1879 = 7ab92e8f4bb1a277621d67ba7373f56a694466c1 (git-svn)

After checking this output a bit closer, it turns out only the directories and files that were retrieved by "git svn clone" (the first revision only) remain. Where did the files from the "git svn fetch" go? Do I need to run something after fetch to see them?

-- 
Victor Engmark
Sverre Rabbelier· Nov 14, 2009, 19:38 UTC · re: Victor Engmark · lore

Re: git svn fetch loses data

Heya,
On Sat, Nov 14, 2009 at 20:29, Victor Engmark <victor.engmark@gmail.com> wrote:
> Do I need to run something after fetch to see them?
Your working copy is probably not up to date anymore, try:
$ git rebase git-svn
-- 
Cheers,

Sverre Rabbelier
Victor Engmark· Nov 14, 2009, 20:35 UTC · re: Sverre Rabbelier · lore

Re: git svn fetch loses data

On Sat, Nov 14, 2009 at 8:38 PM, Sverre Rabbelier <srabbelier@gmail.com> wrote:
Show 6 quoted lines
> On Sat, Nov 14, 2009 at 20:29, Victor Engmark <victor.engmark@gmail.com> wrote:
>> Do I need to run something after fetch to see them?
>
> Your working copy is probably not up to date anymore, try:
>
> $ git rebase git-svn
Thank you very much! That did the trick. Now to update svn2git.sh...
-- 
Victor Engmark
Johan 't Hart· Nov 14, 2009, 23:35 UTC · re: Sverre Rabbelier · lore

Re: git svn fetch loses data

Sverre Rabbelier schreef:
Show 9 quoted lines
> Heya,
> 
> On Sat, Nov 14, 2009 at 20:29, Victor Engmark <victor.engmark@gmail.com> wrote:
>> Do I need to run something after fetch to see them?
> 
> Your working copy is probably not up to date anymore, try:
> 
> $ git rebase git-svn
> 

Why not just $ git svn rebase ?

Victor Engmark· Nov 15, 2009, 09:56 UTC · re: Johan 't Hart · lore

Re: git svn fetch loses data

On Sun, Nov 15, 2009 at 12:35 AM, Johan 't Hart <johanthart@gmail.com> wrote:
Show 13 quoted lines
> Sverre Rabbelier schreef:
>> On Sat, Nov 14, 2009 at 20:29, Victor Engmark <victor.engmark@gmail.com>
>> wrote:
>>>
>>> Do I need to run something after fetch to see them?
>>
>> Your working copy is probably not up to date anymore, try:
>>
>> $ git rebase git-svn
>>
> Why not just
> $ git svn rebase
> ?
What is the difference between the two?
-- 
Victor Engmark
Thomas Rast· Nov 15, 2009, 13:33 UTC · re: Victor Engmark · lore

Re: git svn fetch loses data

Victor Engmark wrote:
Show 9 quoted lines
> On Sun, Nov 15, 2009 at 12:35 AM, Johan 't Hart <johanthart@gmail.com> wrote:
> > Sverre Rabbelier schreef:
> > 
> > > $ git rebase git-svn
> > 
> > Why not just
> > $ git svn rebase
> 
> What is the difference between the two?

'git svn rebase' magically[*] picks the right remote branch to rebase against, and also first talks to the network to update said branch.

[*] actually it looks at the first git-svn-id line found in git log --first-parent.

-- 
Thomas Rast
trast@{inf,student}.ethz.ch
Johan 't Hart· Nov 15, 2009, 19:52 UTC · re: Thomas Rast · lore

Re: git svn fetch loses data

Thomas Rast schreef:
Show 16 quoted lines
> Victor Engmark wrote:
>> On Sun, Nov 15, 2009 at 12:35 AM, Johan 't Hart <johanthart@gmail.com> wrote:
>>> Sverre Rabbelier schreef:
>>>
>>>> $ git rebase git-svn
>>> Why not just
>>> $ git svn rebase
>> What is the difference between the two?
> 
> 'git svn rebase' magically[*] picks the right remote branch to rebase
> against, and also first talks to the network to update said branch.
> 
> 
> [*] actually it looks at the first git-svn-id line found in git log
> --first-parent.
> 

I didn't even know you could also do $ git rebase git-svn Unless git-svn is a ref...

Thomas Rast· Nov 15, 2009, 20:52 UTC · re: Johan 't Hart · lore

Re: git svn fetch loses data

Johan 't Hart wrote:
> I didn't even know you could also do
> $ git rebase git-svn
> Unless git-svn is a ref...

You can't, but in git-svn's default configuration (without --stdlayout) the cloned SVN history is called refs/remotes/git-svn.

-- 
Thomas Rast
trast@{inf,student}.ethz.ch
Victor Engmark· Dec 11, 2009, 08:32 UTC · re: Thomas Rast · lore

Re: git svn fetch loses data

On Sun, Nov 15, 2009 at 9:52 PM, Thomas Rast <trast@student.ethz.ch> wrote:
Show 7 quoted lines
> Johan 't Hart wrote:
>> I didn't even know you could also do
>> $ git rebase git-svn
>> Unless git-svn is a ref...
>
> You can't, but in git-svn's default configuration (without
> --stdlayout) the cloned SVN history is called refs/remotes/git-svn.
Thanks all; now it all works a lot more smoothly.
-- 
Victor Engmark

← back to recent threads