Thread (1 message) 1 message, 1 author, 2016-06-15

Re: Problem using git svn clone

From: Seth Falcon <hidden>
Date: 2016-06-15 22:43:12

"Gustaf Hendeby" [off-list ref] writes:
Hi!

I have a problem with git-svn, which I hope the list can shed some
light over.  I'm quite new to git (but so far I really like it, great
job guys!) and I never use SVN, so don't really know what information
may be needed to be able to help me on the right track.  I hope the
below problem description is appropriate.
Although you've described in detail what you did, it isn't clear to me
what the problem is...
The situation is as follows:

I plan to use git and git svn to track a module in the middle of a SVN
repository (which I have no control over) where I don't have read
access more than to this specific module and the base directory, ie
the layout is similar to this
	https://svn.foo.bar/a/b/c/trunk
	https://svn.foo.bar/a/b/c/tags
	https://svn.foo.bar/a/b/c/branches
and I have read access to https://svm.foo.bar/a,
https://svn.foo.bar/a/b/c and below, but nothing else.

What I want to do is clone the whole thing, including tags and
branches.  I expected to be able to use the following command to do
this (git v1.5.2):

$ git svn clone https://svn.foo.bar/a/b/c -T trunk -t tags -b branches

Initialized empty Git repository in .git/
Using higher level of URL: https://svn.foo.bar/a/b/c => https://svn.foo.bar/a

W: Ignoring error from SVN, path probably does not exist: (175002): RA
layer request failed: REPORT request failed on '/a/!svn/bc/100':
REPORT of '/a/!svn/bc/100': Could not read chunk size: Secure
connection truncated (https://svn.foo.bar)
r306 = 83f0c10b988a8f1e77a3f354126c52f0cfdecf76 (trunk)
[...]
Found possible branch point: https://svn.foo.bar/a/b/c/trunk =>
https://svn.foo.bar/a/b/c/tags/0.1, 314
Found branch parent: (tags/0.1) ad6a2361d0e69d6288ef226bb335bb4bf3bdd12e
Following parent with do_update
Successfully followed parent
r315 = 3b92c4885b9d6f60241533dd99fa5023eebb1c64 (tags/0.1)
r316 = 02e3b828b4f11c5fab9d10d85076a8ff209afa00 (trunk)
[...]

However, it seems I just get the info about the revisions (shows up
nicely in gitk) but no content at all.  The config file reads:

[core]
       repositoryformatversion = 0
       filemode = true
       bare = false
       logallrefupdates = true
[svn-remote "svn"]
       url = https://svn.foo.bar/a/b/c/trunk
       fetch = :refs/remotes/git-svn


If I instead do:

$ git svn clone https://svn.foo.bar/a/b/c/trunk
Initialized empty Git repository in .git/
W: Ignoring error from SVN, path probably does not exist: (175007):
HTTP Path Not Found: REPORT request failed on
'/a/!svn/bc/100/b/c/trunk': '/a/!svn/bc/100/b/c/trunk' path not found
W: +empty_dir: source
W: +empty_dir: test
r306 = 83f0c10b988a8f1e77a3f354126c52f0cfdecf76 (git-svn)
       A       resources/extensions/circuitparts.drext
[...]
r309 = 3a386e9b985c419d129461acbf24978795b36b96 (git-svn)
       A       tools/source/physical.cc
[...]

I get all content in trunk and their revision history, but as expected
no tag info.  The config file reads:

[core]
       repositoryformatversion = 0
       filemode = true
       bare = false
       logallrefupdates = true
[svn-remote "svn"]
       url = https://svn.foo.bar/a
       fetch = b/c/trunk:refs/remotes/trunk
       branches = b/c/branches/*:refs/remotes/*
       tags = b/c/tags/*:refs/remotes/tags/*
That looks like what you want.  Isn't it?

With that config, I would expect:

git svn fetch
   pull updates for trunk and all branches and tags from the svn
   server.

git checkout -b trunk remotes/git-svn
   checkout the current trunk

git svn rebase
   fetch and rebase trunk or current branch.  git svn should determine
   the right git branch from refs/remotes to rebase against.

Does that help any?

+ seth

-- 
Seth Falcon | Computational Biology | Fred Hutchinson Cancer Research Center
http://bioconductor.org
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help