git-svn question: adding a branch to a local clone of an upstream git-svn clone

3 messages, 1 author, 2016-06-15 · open the first message on its own page

git-svn question: adding a branch to a local clone of an upstream git-svn clone

From: Jay Soffian <hidden>
Date: 2016-06-15 22:48:05

I have a clone of a repo that is itself a git-svn clone:

git://git.chromium.org/chromium.git

So my .git/config has (obviously):

[remote "origin"]
	url = git://git.chromium.org/chromium.git
	fetch = +refs/heads/*:refs/remotes/origin/*

The upstream repo has only trunk. I want to use git-svn to add an
additional branch:

http://src.chromium.org/svn/branches/249/

So I added this to my .git/config:

[svn-remote "svn"]
	url = http://src.chromium.org/svn
	fetch = branches/249/src:refs/remotes/branches/249

I looked up the branch point for 249 and created a new branch:

$ svn log http://src.chromium.org/svn/branches/249
------------------------------------------------------------------------
r32060 | laforge@chromium.org | 2009-11-16 11:34:43 -0500 (Mon, 16 Nov
2009) | 1 line

Branching for 249 @32041
------------------------------------------------------------------------
$ git rev2sha | grep src@32041
bf6f4ed svn://svn.chromium.org/chrome/trunk/src@32041
$ git checkout -b 249 bf6f4ed

And then attempted a git svn fetch. Which wanted to grab the entire
svn history. I then realized that the origin git clone is from a
different upstream URL (to which I don't have access), so I tried
adding rewriteRoot:

[svn-remote "svn"]
	url = http://src.chromium.org/svn
	fetch = branches/249/src:refs/remotes/branches/249
	rewriteRoot = svn://svn.chromium.org/chrome

Same problem. Ah, UUID is also different. Unfortunately, git-svn
doesn't have a "rewriteUUID" config (I'm working on a patch), but I
did try hacking .git/svn/.metadata to look like this:

[svn-remote "svn"]
	reposRoot = http://src.chromium.org/svn
	uuid = 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
	svnsync-uuid = 0039d316-1c4b-4281-b951-d872f2087c98
	svnsync-url = svn://svn.chromium.org/chrome

Then changed my .git/config to:

[svn-remote "svn"]
	url = http://src.chromium.org/svn
	fetch = branches/249/src:refs/remotes/branches/249
	useSvnsyncProps = true

I blew away .git/svn/refs and tried again:

$ git svn fetch
Found possible branch point: http://src.chromium.org/svn/trunk/src =>
http://src.chromium.org/svn/branches/249/src, 32041
Initializing parent: refs/remotes/branches/249@32041
r3 = c14d891d44f0afff64e56ed7c9702df1d807b1ee (refs/remotes/branches/249@32041)

Sadly, git svn is still trying to fetch the entire history.

Hmpfh. Any suggestions? Maybe I should just not worry about trying to
have a connected history locally (I'll never be dcomitting) and just
use git svn fetch -r 32041:HEAD ?

j.

Re: git-svn question: adding a branch to a local clone of an upstream git-svn clone

From: Jay Soffian <hidden>
Date: 2016-06-15 22:48:05

On Fri, Jan 22, 2010 at 2:15 PM, Jay Soffian [off-list ref] wrote:
$ git checkout -b 249 bf6f4ed
...
[svn-remote "svn"]
       url = http://src.chromium.org/svn
       fetch = branches/249/src:refs/remotes/branches/249
Also tried this:

$ git update-ref refs/remotes/branches/249 bf6f4ed
$ git svn fetch
Done rebuilding
.git/svn/refs/remotes/branches/249/.rev_map.4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Done rebuilding
.git/svn/refs/remotes/branches/249/.rev_map.4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Done rebuilding
.git/svn/refs/remotes/branches/249/.rev_map.4ff67af0-8c30-449e-8e8b-ad334ec8d88c
[... lots of these as it works its way through 30k revisions...]
Found possible branch point: http://src.chromium.org/svn/trunk/src =>
http://src.chromium.org/svn/branches/249/src, 32041
Initializing parent: refs/remotes/branches/249@32041
r3 = c14d891d44f0afff64e56ed7c9702df1d807b1ee (refs/remotes/branches/249@32041)
...

So, no help either. :-(

j.

Re: git-svn question: adding a branch to a local clone of an upstream git-svn clone

From: Jay Soffian <hidden>
Date: 2016-06-15 22:48:05

On Fri, Jan 22, 2010 at 3:03 PM, Jay Soffian [off-list ref] wrote:
So, no help either. :-(
Okay, got this working with some git-svn hackage. Patch forthcoming.

j.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help