Re: Git svn migration does not work because fatal git checkout updating paths is incompatible with switching branches
- From
- Christine Bauers <c.bauers@gmx.de>
- Date
- Jan 26, 2012, 08:50 UTC
- Message-ID
- <4F2113DB.5030401@gmx.de>
- In-Reply-To
- <1327518563.31804.82.camel@centaur.lab.cmartin.tk>
Am 25.01.2012 20:09, schrieb Carlos Martín Nieto:
Show 74 quoted lines
> On Wed, 2012-01-25 at 19:04 +0100, Christine Bauers wrote: >> Hi there, >> >> I´m trying to migrate a repository from svn to git which branches and >> tags with the following migration script: >> >> git svn clone --no-metadata --stdlayout --A ../users.txt >> svn://host/svn/project/subproject subproject >> >> cd subproject >> git config svn.authorsfile ../../users.txt >> git svn fetch >> >> git checkout -b branch1 remotes/branch1 >> git checkout -b branch2 remotes/branch2 >> git checkout -b branch3 remotes/branch3 >> >> git checkout -b src_v1 remotes/tags/src >> git checkout master >> git tag src src_v1 >> git branch -D src_v1 >> >> git checkout -b WebContent_v1 remotes/tags/WebContent >> git checkout master >> git tag WebContent WebContent_v1 >> git branch -D WebContent_v1 >> >> and get the follwoing errors: >> >> W: Ignoring error from SVN, path probably does not exist: (160013): >> Filesystem has no item: Datei nicht gefunden: Revision 8966, Pfad >> »subproject« >> W: Do not be alarmed at the above message git-svn is just searching >> aggressively for old history. >> This may take a while on large repositories >> fatal: git checkout: updating paths is incompatible with switching branches. >> Did you intend to checkout 'remotes/branch1' which can not be resolved >> as commit? >> fatal: git checkout: updating paths is incompatible with switching branches. >> Did you intend to checkout 'remotes/branch2 which can not be resolved as >> commit? >> fatal: git checkout: updating paths is incompatible with switching branches. >> Did you intend to checkout 'remotes/branch3' which can not be resolved >> as commit? >> fatal: git checkout: updating paths is incompatible with switching branches. >> Did you intend to checkout 'remotes/tags/src' which can not be resolved >> as commit? >> error: pathspec 'master' did not match any file(s) known to git. >> fatal: Failed to resolve 'src_v1' as a valid ref. >> error: branch 'src_v1' not found. >> fatal: git checkout: updating paths is incompatible with switching branches. >> Did you intend to checkout 'remotes/tags/WebContent' which can not be >> resolved as commit? >> error: pathspec 'master' did not match any file(s) known to git. >> fatal: Failed to resolve 'WebContent_v1' as a valid ref. >> error: branch 'WebContent_v1' not found. >> >> How do I solve this problem? > First try to figure out where the problem happens. It could be that > git-svn isn't recognising the branches properly, or that the layout > isn't what it expects or any number of things. > > What layout does the repo have? Does it correspond to what git-svn is > expecting? All those error messages come from the fact that you're > telling git some starting points that it can't find. Make sure those > exist and they have the name you're giving. What does `git branch -a` > say? You're presumably not giving us the real names, so we can't tell if > there are problems there. > > If you're looking to migrate completely, something like > svn-dump-fast-export ( https://github.com/barrbrain/svn-dump-fast-export > ) might get you there better. > > cmn
Thanks for your answer. I would say the problem happens while cloning the project, because git branch -a and git branch -r says nothing. The question is why aren´t there any branches? Here is the structure of the project:
marketplace
braches
lyth_dev
meinbestand_suche
umkreis_suche
tags
src
WebContent
trunk
src
WebContent
trunk_112233
src
WebContent
And here again the script:
git svn clone --no-metadata --stdlayout --A ../users.txt svn://host/svn/projects/marketplace marketplace
cd marketplace
git config svn.authorsfile ../../users.txt
git svn fetch
#Checkout Branches
git checkout -b lyth_dev remotes/lyth_dev
git checkout -b meinbestand_suche remotes/meinbestand_suche
git checkout -b umkreis_suche remotes/umkreis_suche
#Checkout der tags
git checkout -b src_v1 remotes/tags/src
git checkout master
git tag src src_v1
git branch -D src_v1
git checkout -b WebContent_v1 remotes/tags/WebContent
git checkout master
git tag WebContent WebContent_v1
git branch -D WebContent_v1
Is there something wrong with this script? Or does the errors maybe occurs because there is a trunk_112233. The log file says the following:
Initialized empty Git repository in c:/project/marketplace/.git/ Checked through r8445 Checked through r8545 Checked through r8645 Checked through r8745 Checked through r8845 Checked through r8945 Checked through r8968 Checked through r8968
And that´s all. It says nothing about references.
Do you have any ideas?
Thanks