Re: [PATCH 0/7] Foreign VCS support
- From
- Pete Wyckoff <pw@padd.com>
- Date
- Jun 15, 2009, 16:26 UTC
- Message-ID
- <20090615162641.GA14735@padd.com>
- In-Reply-To
- <alpine.LNX.2.00.0905271328160.2147@iabervon.org>
barkalow@iabervon.org wrote on Wed, 27 May 2009 14:15 -0400:
> This is a newly-generated and reorganized replacement for db/foreign-scm. > It applies to recent next.
I finally got a chance to look at this new version. If you have updates somewhere, let me know. I had to fix up some merge issues to put it on top of 1.6.3.2.
First, I'd prefer to use the non-P4-API version, but it doesn't link:
vcs-p4/vcs-p4.o: In function `p4_integrate': /u/petew/src/git/vcs-p4/vcs-p4.c:405: undefined reference to `_p4_call_unknown' vcs-p4/vcs-p4.o: In function `p4_resolve': /u/petew/src/git/vcs-p4/vcs-p4.c:412: undefined reference to `_p4_call_unknown' vcs-p4/vcs-p4.o: In function `p4_edit': /u/petew/src/git/vcs-p4/vcs-p4.c:423: undefined reference to `_p4_call_unknown' vcs-p4/vcs-p4.o: In function `p4_submit': /u/petew/src/git/vcs-p4/vcs-p4.c:479: undefined reference to `_p4_call_form_io' vcs-p4/vcs-p4.o: In function `export_p4': /u/petew/src/git/vcs-p4/vcs-p4.c:1008: undefined reference to `p4_write_tree' /u/petew/src/git/vcs-p4/vcs-p4.c:1031: undefined reference to `p4_release_tree'
Next, it took me a while to discover the format of the remote entry. Can you think of a way that "git remote add ..." could just work? How to tell it the "vcs = p4" setting at add time, for instance?
[remote "upstream"]
url = foo
codeline = //depot/path/to/project
fetch = +refs/p4/*:refs/remotes/upstream/*
port = my-p4-server:1666
vcs = p4The command "git remote show upstream" complains about "foo" in the url. Looking at your patches, the only place that sets remote->foreign_vcs is remote's handle_config(). This isn't going to work for "git remote show upstream" which calls transport_get() with a NULL remote.
Maybe use urls of the form "vcs-p4://depot/path/to/project". Might solve both issues.
It does work, and I have added two unrelated parts of the p4 repo in the same git. I'm going to try some much larger scale tests soon.
-- Pete