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

Is there an updated version of git-vcs-p4?

From
Tor Arvid Lund <torarvid@gmail.com>
Date
Sep 13, 2010, 09:04 UTC
Message-ID
<AANLkTi=okJRFeBhbURB8Ez4Vb65fNdacKeko+4sx9ihy@mail.gmail.com>

Hello, Daniel (and list). I wonder if I might ask you if you have an "updated" version of git-vcs-p4? Or otherwise, if anyone can hold my hand while I try to implement what I need... :)

I'm having trouble getting exporting to work. Looking at the C code, I quickly realize that there's _much_ I don't know anything about, but it seems to me that vcs-p4.c needs to support the "refspec " capability. Am I on the right track?

My reasoning so far: the version of vcs-p4.c that I have, contained a prefixcmp for "export ". This made "git push" barf with the current version of transport-helper.c, so I did something like this:

diff --git a/vcs-p4/vcs-p4.c b/vcs-p4/vcs-p4.c
index a4613a6..29d761b 100644
--- a/vcs-p4/vcs-p4.c
+++ b/vcs-p4/vcs-p4.c
@@ -1213,7 +1213,18 @@ int main(int argc, const char **argv)
                        }
                        printf("\n");
                        fflush(stdout);
-               } else if (!prefixcmp(buf.buf, "export ")) {
+               } else if (!strcmp(buf.buf, "export")) {
+                       printf("\n"); // no export-marks file
+                       printf("\n"); // no import-marks file either
+                       fflush(stdout);


This got me one step further, but it now produces an empty argument
list to fast-export (in the transport-helper function
push_refs_with_export), because the data->refspecs is NULL. It seems
to get set in get_helper when it encounters the "refspec " cap (which
vcs-p4 does not support).

So - is this "refspec " thingy what needs to be implemented, or am I
lost in space here? :)

-Tor Arvid-
Next: Sverre Rabbelier
Message 1 of 4 in “Is there an updated version of git-vcs-p4?”
  1. Tor Arvid LundSep 13, 2010
  2. Sverre RabbelierSep 13, 2010
  3. Tor Arvid LundSep 13, 2010
  4. Daniel BarkalowSep 13, 2010

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.