git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 0/7] Foreign VCS support

From
PWPete 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 = p4

The 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
Previous: Daniel BarkalowNext: Daniel Barkalow
Message 2 of 7 in “Foreign VCS support”
  1. 0/7 Foreign VCS supportDaniel Barkalow, May 27, 2009
  2. Pete WyckoffJun 15, 2009
  3. Daniel BarkalowJun 15, 2009
  4. Pete WyckoffJun 16, 2009
  5. Daniel BarkalowJun 16, 2009
  6. Pete WyckoffJun 18, 2009
  7. Daniel BarkalowJun 18, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.