Browse Source
Currently the test passes with 1.3.3 but not with the tip of "master". This is to verify the fixes from Eric W Biedermann. Signed-off-by: Junio C Hamano <junkio@cox.net>maint
Junio C Hamano
19 years ago
17 changed files with 626 additions and 0 deletions
@ -0,0 +1,28 @@
@@ -0,0 +1,28 @@
|
||||
#!/bin/sh |
||||
# |
||||
# Copyright (c) 2005 Junio C Hamano |
||||
# |
||||
|
||||
test_description='git-mailinfo and git-mailsplit test' |
||||
|
||||
. ./test-lib.sh |
||||
|
||||
test_expect_success 'split sample box' \ |
||||
'git-mailsplit -o. ../t5100/sample.mbox >last && |
||||
last=`cat last` && |
||||
echo total is $last && |
||||
test `cat last` = 5' |
||||
|
||||
for mail in `echo 00*` |
||||
do |
||||
test_expect_success "mailinfo $mail" \ |
||||
"git-mailinfo -u msg$mail patch$mail <$mail >info$mail && |
||||
echo msg && |
||||
diff ../t5100/msg$mail msg$mail && |
||||
echo patch && |
||||
diff ../t5100/patch$mail patch$mail && |
||||
echo info && |
||||
diff ../t5100/info$mail info$mail" |
||||
done |
||||
|
||||
test_done |
@ -0,0 +1,5 @@
@@ -0,0 +1,5 @@
|
||||
Author: A U Thor |
||||
Email: a.u.thor@example.com |
||||
Subject: a commit. |
||||
Date: Fri, 9 Jun 2006 00:44:16 -0700 |
||||
|
@ -0,0 +1,5 @@
@@ -0,0 +1,5 @@
|
||||
Author: A U Thor |
||||
Email: a.u.thor@example.com |
||||
Subject: another patch |
||||
Date: Fri, 9 Jun 2006 00:44:16 -0700 |
||||
|
@ -0,0 +1,5 @@
@@ -0,0 +1,5 @@
|
||||
Author: A U Thor |
||||
Email: a.u.thor@example.com |
||||
Subject: third patch |
||||
Date: Fri, 9 Jun 2006 00:44:16 -0700 |
||||
|
@ -0,0 +1,5 @@
@@ -0,0 +1,5 @@
|
||||
Author: YOSHIFUJI Hideaki / 吉藤英明 |
||||
Email: yoshfuji@linux-ipv6.org |
||||
Subject: GIT: Try all addresses for given remote name |
||||
Date: Thu, 21 Jul 2005 09:10:36 -0400 (EDT) |
||||
|
@ -0,0 +1,5 @@
@@ -0,0 +1,5 @@
|
||||
Author: David Kågedal |
||||
Email: davidk@lysator.liu.se |
||||
Subject: Fixed two bugs in git-cvsimport-script. |
||||
Date: Mon, 15 Aug 2005 20:18:25 +0200 |
||||
|
@ -0,0 +1,21 @@
@@ -0,0 +1,21 @@
|
||||
Here is a patch from A U Thor. This addresses the issue raised in the |
||||
message: |
||||
|
||||
From: Nit Picker <nit.picker@example.net> |
||||
Subject: foo is too old |
||||
Message-Id: <nitpicker.12121212@example.net> |
||||
|
||||
Hopefully this would fix the problem stated there. |
||||
|
||||
|
||||
I have included an extra blank line above, but it does not have to be |
||||
stripped away here, along with the |
||||
whitespaces at the end of the above line. They are expected to be squashed |
||||
when the message is made into a commit log by stripspace, |
||||
Also, there are three blank lines after this paragraph, |
||||
two truly blank and another full of spaces in between. |
||||
|
||||
|
||||
|
||||
Hope this helps. |
||||
|
@ -0,0 +1,9 @@
@@ -0,0 +1,9 @@
|
||||
Here is a patch from A U Thor. This addresses the issue raised in the |
||||
message: |
||||
|
||||
From: Nit Picker <nit.picker@example.net> |
||||
Subject: foo is too old |
||||
Message-Id: <nitpicker.12121212@example.net> |
||||
|
||||
Hopefully this would fix the problem stated there. |
||||
|
@ -0,0 +1,7 @@
@@ -0,0 +1,7 @@
|
||||
Hello. |
||||
|
||||
Try all addresses for given remote name until it succeeds. |
||||
Also supports IPv6. |
||||
|
||||
Signed-of-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org> |
||||
|
@ -0,0 +1,13 @@
@@ -0,0 +1,13 @@
|
||||
The git-cvsimport-script had a copule of small bugs that prevented me |
||||
from importing a big CVS repository. |
||||
|
||||
The first was that it didn't handle removed files with a multi-digit |
||||
primary revision number. |
||||
|
||||
The second was that it was asking the CVS server for "F" messages, |
||||
although they were not handled. |
||||
|
||||
I also updated the documentation for that script to correspond to |
||||
actual flags. |
||||
|
||||
Signed-off-by: David Kågedal <davidk@lysator.liu.se> |
@ -0,0 +1,14 @@
@@ -0,0 +1,14 @@
|
||||
--- |
||||
foo | 2 +- |
||||
1 files changed, 1 insertions(+), 1 deletions(-) |
||||
|
||||
diff --git a/foo b/foo |
||||
index 9123cdc..918dcf8 100644 |
||||
--- a/foo |
||||
+++ b/foo |
||||
@@ -1 +1 @@ |
||||
-Fri Jun 9 00:44:04 PDT 2006 |
||||
+Fri Jun 9 00:44:13 PDT 2006 |
||||
-- |
||||
1.4.0.g6f2b |
||||
|
@ -0,0 +1,14 @@
@@ -0,0 +1,14 @@
|
||||
--- |
||||
foo | 2 +- |
||||
1 files changed, 1 insertions(+), 1 deletions(-) |
||||
|
||||
diff --git a/foo b/foo |
||||
index 9123cdc..918dcf8 100644 |
||||
--- a/foo |
||||
+++ b/foo |
||||
@@ -1 +1 @@ |
||||
-Fri Jun 9 00:44:04 PDT 2006 |
||||
+Fri Jun 9 00:44:13 PDT 2006 |
||||
-- |
||||
1.4.0.g6f2b |
||||
|
@ -0,0 +1,14 @@
@@ -0,0 +1,14 @@
|
||||
--- |
||||
foo | 2 +- |
||||
1 files changed, 1 insertions(+), 1 deletions(-) |
||||
|
||||
diff --git a/foo b/foo |
||||
index 9123cdc..918dcf8 100644 |
||||
--- a/foo |
||||
+++ b/foo |
||||
@@ -1 +1 @@ |
||||
-Fri Jun 9 00:44:04 PDT 2006 |
||||
+Fri Jun 9 00:44:13 PDT 2006 |
||||
-- |
||||
1.4.0.g6f2b |
||||
|
@ -0,0 +1,93 @@
@@ -0,0 +1,93 @@
|
||||
diff --git a/connect.c b/connect.c |
||||
--- a/connect.c |
||||
+++ b/connect.c |
||||
@@ -96,42 +96,57 @@ static enum protocol get_protocol(const |
||||
die("I don't handle protocol '%s'", name); |
||||
} |
||||
|
||||
-static void lookup_host(const char *host, struct sockaddr *in) |
||||
-{ |
||||
- struct addrinfo *res; |
||||
- int ret; |
||||
- |
||||
- ret = getaddrinfo(host, NULL, NULL, &res); |
||||
- if (ret) |
||||
- die("Unable to look up %s (%s)", host, gai_strerror(ret)); |
||||
- *in = *res->ai_addr; |
||||
- freeaddrinfo(res); |
||||
-} |
||||
+#define STR_(s) # s |
||||
+#define STR(s) STR_(s) |
||||
|
||||
static int git_tcp_connect(int fd[2], const char *prog, char *host, char *path) |
||||
{ |
||||
- struct sockaddr addr; |
||||
- int port = DEFAULT_GIT_PORT, sockfd; |
||||
- char *colon; |
||||
- |
||||
- colon = strchr(host, ':'); |
||||
- if (colon) { |
||||
- char *end; |
||||
- unsigned long n = strtoul(colon+1, &end, 0); |
||||
- if (colon[1] && !*end) { |
||||
- *colon = 0; |
||||
- port = n; |
||||
+ int sockfd = -1; |
||||
+ char *colon, *end; |
||||
+ char *port = STR(DEFAULT_GIT_PORT); |
||||
+ struct addrinfo hints, *ai0, *ai; |
||||
+ int gai; |
||||
+ |
||||
+ if (host[0] == '[') { |
||||
+ end = strchr(host + 1, ']'); |
||||
+ if (end) { |
||||
+ *end = 0; |
||||
+ end++; |
||||
+ host++; |
||||
+ } else |
||||
+ end = host; |
||||
+ } else |
||||
+ end = host; |
||||
+ colon = strchr(end, ':'); |
||||
+ |
||||
+ if (colon) |
||||
+ port = colon + 1; |
||||
+ |
||||
+ memset(&hints, 0, sizeof(hints)); |
||||
+ hints.ai_socktype = SOCK_STREAM; |
||||
+ hints.ai_protocol = IPPROTO_TCP; |
||||
+ |
||||
+ gai = getaddrinfo(host, port, &hints, &ai); |
||||
+ if (gai) |
||||
+ die("Unable to look up %s (%s)", host, gai_strerror(gai)); |
||||
+ |
||||
+ for (ai0 = ai; ai; ai = ai->ai_next) { |
||||
+ sockfd = socket(ai->ai_family, ai->ai_socktype, ai->ai_protocol); |
||||
+ if (sockfd < 0) |
||||
+ continue; |
||||
+ if (connect(sockfd, ai->ai_addr, ai->ai_addrlen) < 0) { |
||||
+ close(sockfd); |
||||
+ sockfd = -1; |
||||
+ continue; |
||||
} |
||||
+ break; |
||||
} |
||||
|
||||
- lookup_host(host, &addr); |
||||
- ((struct sockaddr_in *)&addr)->sin_port = htons(port); |
||||
+ freeaddrinfo(ai0); |
||||
|
||||
- sockfd = socket(PF_INET, SOCK_STREAM, IPPROTO_IP); |
||||
if (sockfd < 0) |
||||
die("unable to create socket (%s)", strerror(errno)); |
||||
- if (connect(sockfd, (void *)&addr, sizeof(addr)) < 0) |
||||
- die("unable to connect (%s)", strerror(errno)); |
||||
+ |
||||
fd[0] = sockfd; |
||||
fd[1] = sockfd; |
||||
packet_write(sockfd, "%s %s\n", prog, path); |
||||
|
||||
-- |
||||
YOSHIFUJI Hideaki @ USAGI Project <yoshfuji@linux-ipv6.org> |
||||
GPG-FP : 9022 65EB 1ECF 3AD1 0BDF 80D8 4807 F894 E062 0EEA |
||||
|
@ -0,0 +1,69 @@
@@ -0,0 +1,69 @@
|
||||
--- |
||||
|
||||
Documentation/git-cvsimport-script.txt | 9 ++++++++- |
||||
git-cvsimport-script | 4 ++-- |
||||
2 files changed, 10 insertions(+), 3 deletions(-) |
||||
|
||||
50452f9c0c2df1f04d83a26266ba704b13861632 |
||||
diff --git a/Documentation/git-cvsimport-script.txt b/Documentation/git-cvsimport-script.txt |
||||
--- a/Documentation/git-cvsimport-script.txt |
||||
+++ b/Documentation/git-cvsimport-script.txt |
||||
@@ -29,6 +29,10 @@ OPTIONS |
||||
currently, only the :local:, :ext: and :pserver: access methods |
||||
are supported. |
||||
|
||||
+-C <target-dir>:: |
||||
+ The GIT repository to import to. If the directory doesn't |
||||
+ exist, it will be created. Default is the current directory. |
||||
+ |
||||
-i:: |
||||
Import-only: don't perform a checkout after importing. This option |
||||
ensures the working directory and cache remain untouched and will |
||||
@@ -44,7 +48,7 @@ OPTIONS |
||||
|
||||
-p <options-for-cvsps>:: |
||||
Additional options for cvsps. |
||||
- The options '-x' and '-A' are implicit and should not be used here. |
||||
+ The options '-u' and '-A' are implicit and should not be used here. |
||||
|
||||
If you need to pass multiple options, separate them with a comma. |
||||
|
||||
@@ -57,6 +61,9 @@ OPTIONS |
||||
-h:: |
||||
Print a short usage message and exit. |
||||
|
||||
+-z <fuzz>:: |
||||
+ Pass the timestamp fuzz factor to cvsps. |
||||
+ |
||||
OUTPUT |
||||
------ |
||||
If '-v' is specified, the script reports what it is doing. |
||||
diff --git a/git-cvsimport-script b/git-cvsimport-script |
||||
--- a/git-cvsimport-script |
||||
+++ b/git-cvsimport-script |
||||
@@ -190,7 +190,7 @@ sub conn { |
||||
$self->{'socketo'}->write("Root $repo\n"); |
||||
|
||||
# Trial and error says that this probably is the minimum set |
||||
- $self->{'socketo'}->write("Valid-responses ok error Valid-requests Mode M Mbinary E F Checked-in Created Updated Merged Removed\n"); |
||||
+ $self->{'socketo'}->write("Valid-responses ok error Valid-requests Mode M Mbinary E Checked-in Created Updated Merged Removed\n"); |
||||
|
||||
$self->{'socketo'}->write("valid-requests\n"); |
||||
$self->{'socketo'}->flush(); |
||||
@@ -691,7 +691,7 @@ while(<CVS>) { |
||||
unlink($tmpname); |
||||
my $mode = pmode($cvs->{'mode'}); |
||||
push(@new,[$mode, $sha, $fn]); # may be resurrected! |
||||
- } elsif($state == 9 and /^\s+(\S+):\d(?:\.\d+)+->(\d(?:\.\d+)+)\(DEAD\)\s*$/) { |
||||
+ } elsif($state == 9 and /^\s+(\S+):\d+(?:\.\d+)+->(\d+(?:\.\d+)+)\(DEAD\)\s*$/) { |
||||
my $fn = $1; |
||||
$fn =~ s#^/+##; |
||||
push(@old,$fn); |
||||
|
||||
-- |
||||
David Kågedal |
||||
- |
||||
To unsubscribe from this list: send the line "unsubscribe git" in |
||||
the body of a message to majordomo@vger.kernel.org |
||||
More majordomo info at http://vger.kernel.org/majordomo-info.html |
||||
|
@ -0,0 +1,317 @@
@@ -0,0 +1,317 @@
|
||||
From nobody Mon Sep 17 00:00:00 2001 |
||||
From: A U Thor <a.u.thor@example.com> |
||||
Date: Fri, 9 Jun 2006 00:44:16 -0700 |
||||
Subject: [PATCH] a commit. |
||||
|
||||
Here is a patch from A U Thor. |
||||
|
||||
--- |
||||
foo | 2 +- |
||||
1 files changed, 1 insertions(+), 1 deletions(-) |
||||
|
||||
diff --git a/foo b/foo |
||||
index 9123cdc..918dcf8 100644 |
||||
--- a/foo |
||||
+++ b/foo |
||||
@@ -1 +1 @@ |
||||
-Fri Jun 9 00:44:04 PDT 2006 |
||||
+Fri Jun 9 00:44:13 PDT 2006 |
||||
-- |
||||
1.4.0.g6f2b |
||||
|
||||
From nobody Mon Sep 17 00:00:00 2001 |
||||
From: A U Thor <a.u.thor@example.com> |
||||
Date: Fri, 9 Jun 2006 00:44:16 -0700 |
||||
Subject: [PATCH] another patch |
||||
|
||||
Here is a patch from A U Thor. This addresses the issue raised in the |
||||
message: |
||||
|
||||
From: Nit Picker <nit.picker@example.net> |
||||
Subject: foo is too old |
||||
Message-Id: <nitpicker.12121212@example.net> |
||||
|
||||
Hopefully this would fix the problem stated there. |
||||
|
||||
|
||||
I have included an extra blank line above, but it does not have to be |
||||
stripped away here, along with the |
||||
whitespaces at the end of the above line. They are expected to be squashed |
||||
when the message is made into a commit log by stripspace, |
||||
Also, there are three blank lines after this paragraph, |
||||
two truly blank and another full of spaces in between. |
||||
|
||||
|
||||
|
||||
Hope this helps. |
||||
|
||||
--- |
||||
foo | 2 +- |
||||
1 files changed, 1 insertions(+), 1 deletions(-) |
||||
|
||||
diff --git a/foo b/foo |
||||
index 9123cdc..918dcf8 100644 |
||||
--- a/foo |
||||
+++ b/foo |
||||
@@ -1 +1 @@ |
||||
-Fri Jun 9 00:44:04 PDT 2006 |
||||
+Fri Jun 9 00:44:13 PDT 2006 |
||||
-- |
||||
1.4.0.g6f2b |
||||
|
||||
From nobody Mon Sep 17 00:00:00 2001 |
||||
From: Junio C Hamano <junio@kernel.org> |
||||
Date: Fri, 9 Jun 2006 00:44:16 -0700 |
||||
Subject: re: [PATCH] another patch |
||||
|
||||
From: A U Thor <a.u.thor@example.com> |
||||
Subject: [PATCH] third patch |
||||
|
||||
Here is a patch from A U Thor. This addresses the issue raised in the |
||||
message: |
||||
|
||||
From: Nit Picker <nit.picker@example.net> |
||||
Subject: foo is too old |
||||
Message-Id: <nitpicker.12121212@example.net> |
||||
|
||||
Hopefully this would fix the problem stated there. |
||||
|
||||
--- |
||||
foo | 2 +- |
||||
1 files changed, 1 insertions(+), 1 deletions(-) |
||||
|
||||
diff --git a/foo b/foo |
||||
index 9123cdc..918dcf8 100644 |
||||
--- a/foo |
||||
+++ b/foo |
||||
@@ -1 +1 @@ |
||||
-Fri Jun 9 00:44:04 PDT 2006 |
||||
+Fri Jun 9 00:44:13 PDT 2006 |
||||
-- |
||||
1.4.0.g6f2b |
||||
|
||||
From nobody Sat Aug 27 23:07:49 2005 |
||||
Path: news.gmane.org!not-for-mail |
||||
Message-ID: <20050721.091036.01119516.yoshfuji@linux-ipv6.org> |
||||
From: YOSHIFUJI Hideaki / =?iso-2022-jp?B?GyRCNUhGIzFRTEAbKEI=?= |
||||
<yoshfuji@linux-ipv6.org> |
||||
Newsgroups: gmane.comp.version-control.git |
||||
Subject: [PATCH 1/2] GIT: Try all addresses for given remote name |
||||
Date: Thu, 21 Jul 2005 09:10:36 -0400 (EDT) |
||||
Lines: 99 |
||||
Organization: USAGI/WIDE Project |
||||
Approved: news@gmane.org |
||||
NNTP-Posting-Host: main.gmane.org |
||||
Mime-Version: 1.0 |
||||
Content-Type: Text/Plain; charset=us-ascii |
||||
Content-Transfer-Encoding: 7bit |
||||
X-Trace: sea.gmane.org 1121951434 29350 80.91.229.2 (21 Jul 2005 13:10:34 GMT) |
||||
X-Complaints-To: usenet@sea.gmane.org |
||||
NNTP-Posting-Date: Thu, 21 Jul 2005 13:10:34 +0000 (UTC) |
||||
|
||||
Hello. |
||||
|
||||
Try all addresses for given remote name until it succeeds. |
||||
Also supports IPv6. |
||||
|
||||
Signed-of-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org> |
||||
|
||||
diff --git a/connect.c b/connect.c |
||||
--- a/connect.c |
||||
+++ b/connect.c |
||||
@@ -96,42 +96,57 @@ static enum protocol get_protocol(const |
||||
die("I don't handle protocol '%s'", name); |
||||
} |
||||
|
||||
-static void lookup_host(const char *host, struct sockaddr *in) |
||||
-{ |
||||
- struct addrinfo *res; |
||||
- int ret; |
||||
- |
||||
- ret = getaddrinfo(host, NULL, NULL, &res); |
||||
- if (ret) |
||||
- die("Unable to look up %s (%s)", host, gai_strerror(ret)); |
||||
- *in = *res->ai_addr; |
||||
- freeaddrinfo(res); |
||||
-} |
||||
+#define STR_(s) # s |
||||
+#define STR(s) STR_(s) |
||||
|
||||
static int git_tcp_connect(int fd[2], const char *prog, char *host, char *path) |
||||
{ |
||||
- struct sockaddr addr; |
||||
- int port = DEFAULT_GIT_PORT, sockfd; |
||||
- char *colon; |
||||
- |
||||
- colon = strchr(host, ':'); |
||||
- if (colon) { |
||||
- char *end; |
||||
- unsigned long n = strtoul(colon+1, &end, 0); |
||||
- if (colon[1] && !*end) { |
||||
- *colon = 0; |
||||
- port = n; |
||||
+ int sockfd = -1; |
||||
+ char *colon, *end; |
||||
+ char *port = STR(DEFAULT_GIT_PORT); |
||||
+ struct addrinfo hints, *ai0, *ai; |
||||
+ int gai; |
||||
+ |
||||
+ if (host[0] == '[') { |
||||
+ end = strchr(host + 1, ']'); |
||||
+ if (end) { |
||||
+ *end = 0; |
||||
+ end++; |
||||
+ host++; |
||||
+ } else |
||||
+ end = host; |
||||
+ } else |
||||
+ end = host; |
||||
+ colon = strchr(end, ':'); |
||||
+ |
||||
+ if (colon) |
||||
+ port = colon + 1; |
||||
+ |
||||
+ memset(&hints, 0, sizeof(hints)); |
||||
+ hints.ai_socktype = SOCK_STREAM; |
||||
+ hints.ai_protocol = IPPROTO_TCP; |
||||
+ |
||||
+ gai = getaddrinfo(host, port, &hints, &ai); |
||||
+ if (gai) |
||||
+ die("Unable to look up %s (%s)", host, gai_strerror(gai)); |
||||
+ |
||||
+ for (ai0 = ai; ai; ai = ai->ai_next) { |
||||
+ sockfd = socket(ai->ai_family, ai->ai_socktype, ai->ai_protocol); |
||||
+ if (sockfd < 0) |
||||
+ continue; |
||||
+ if (connect(sockfd, ai->ai_addr, ai->ai_addrlen) < 0) { |
||||
+ close(sockfd); |
||||
+ sockfd = -1; |
||||
+ continue; |
||||
} |
||||
+ break; |
||||
} |
||||
|
||||
- lookup_host(host, &addr); |
||||
- ((struct sockaddr_in *)&addr)->sin_port = htons(port); |
||||
+ freeaddrinfo(ai0); |
||||
|
||||
- sockfd = socket(PF_INET, SOCK_STREAM, IPPROTO_IP); |
||||
if (sockfd < 0) |
||||
die("unable to create socket (%s)", strerror(errno)); |
||||
- if (connect(sockfd, (void *)&addr, sizeof(addr)) < 0) |
||||
- die("unable to connect (%s)", strerror(errno)); |
||||
+ |
||||
fd[0] = sockfd; |
||||
fd[1] = sockfd; |
||||
packet_write(sockfd, "%s %s\n", prog, path); |
||||
|
||||
-- |
||||
YOSHIFUJI Hideaki @ USAGI Project <yoshfuji@linux-ipv6.org> |
||||
GPG-FP : 9022 65EB 1ECF 3AD1 0BDF 80D8 4807 F894 E062 0EEA |
||||
|
||||
From nobody Sat Aug 27 23:07:49 2005 |
||||
Path: news.gmane.org!not-for-mail |
||||
Message-ID: <u5tacjjdpxq.fsf@lysator.liu.se> |
||||
From: =?iso-8859-1?Q?David_K=E5gedal?= <davidk@lysator.liu.se> |
||||
Newsgroups: gmane.comp.version-control.git |
||||
Subject: [PATCH] Fixed two bugs in git-cvsimport-script. |
||||
Date: Mon, 15 Aug 2005 20:18:25 +0200 |
||||
Lines: 83 |
||||
Approved: news@gmane.org |
||||
NNTP-Posting-Host: main.gmane.org |
||||
Mime-Version: 1.0 |
||||
Content-Type: text/plain; charset=iso-8859-1 |
||||
Content-Transfer-Encoding: QUOTED-PRINTABLE |
||||
X-Trace: sea.gmane.org 1124130247 31839 80.91.229.2 (15 Aug 2005 18:24:07 GMT) |
||||
X-Complaints-To: usenet@sea.gmane.org |
||||
NNTP-Posting-Date: Mon, 15 Aug 2005 18:24:07 +0000 (UTC) |
||||
Cc: "Junio C. Hamano" <junkio@cox.net> |
||||
Original-X-From: git-owner@vger.kernel.org Mon Aug 15 20:24:05 2005 |
||||
|
||||
The git-cvsimport-script had a copule of small bugs that prevented me |
||||
from importing a big CVS repository. |
||||
|
||||
The first was that it didn't handle removed files with a multi-digit |
||||
primary revision number. |
||||
|
||||
The second was that it was asking the CVS server for "F" messages, |
||||
although they were not handled. |
||||
|
||||
I also updated the documentation for that script to correspond to |
||||
actual flags. |
||||
|
||||
Signed-off-by: David K=E5gedal <davidk@lysator.liu.se> |
||||
--- |
||||
|
||||
Documentation/git-cvsimport-script.txt | 9 ++++++++- |
||||
git-cvsimport-script | 4 ++-- |
||||
2 files changed, 10 insertions(+), 3 deletions(-) |
||||
|
||||
50452f9c0c2df1f04d83a26266ba704b13861632 |
||||
diff --git a/Documentation/git-cvsimport-script.txt b/Documentation/git= |
||||
-cvsimport-script.txt |
||||
--- a/Documentation/git-cvsimport-script.txt |
||||
+++ b/Documentation/git-cvsimport-script.txt |
||||
@@ -29,6 +29,10 @@ OPTIONS |
||||
currently, only the :local:, :ext: and :pserver: access methods=20 |
||||
are supported. |
||||
=20 |
||||
+-C <target-dir>:: |
||||
+ The GIT repository to import to. If the directory doesn't |
||||
+ exist, it will be created. Default is the current directory. |
||||
+ |
||||
-i:: |
||||
Import-only: don't perform a checkout after importing. This option |
||||
ensures the working directory and cache remain untouched and will |
||||
@@ -44,7 +48,7 @@ OPTIONS |
||||
=20 |
||||
-p <options-for-cvsps>:: |
||||
Additional options for cvsps. |
||||
- The options '-x' and '-A' are implicit and should not be used here. |
||||
+ The options '-u' and '-A' are implicit and should not be used here. |
||||
=20 |
||||
If you need to pass multiple options, separate them with a comma. |
||||
=20 |
||||
@@ -57,6 +61,9 @@ OPTIONS |
||||
-h:: |
||||
Print a short usage message and exit. |
||||
=20 |
||||
+-z <fuzz>:: |
||||
+ Pass the timestamp fuzz factor to cvsps. |
||||
+ |
||||
OUTPUT |
||||
------ |
||||
If '-v' is specified, the script reports what it is doing. |
||||
diff --git a/git-cvsimport-script b/git-cvsimport-script |
||||
--- a/git-cvsimport-script |
||||
+++ b/git-cvsimport-script |
||||
@@ -190,7 +190,7 @@ sub conn { |
||||
$self->{'socketo'}->write("Root $repo\n"); |
||||
=20 |
||||
# Trial and error says that this probably is the minimum set |
||||
- $self->{'socketo'}->write("Valid-responses ok error Valid-requests Mo= |
||||
de M Mbinary E F Checked-in Created Updated Merged Removed\n"); |
||||
+ $self->{'socketo'}->write("Valid-responses ok error Valid-requests Mo= |
||||
de M Mbinary E Checked-in Created Updated Merged Removed\n"); |
||||
=20 |
||||
$self->{'socketo'}->write("valid-requests\n"); |
||||
$self->{'socketo'}->flush(); |
||||
@@ -691,7 +691,7 @@ while(<CVS>) { |
||||
unlink($tmpname); |
||||
my $mode =3D pmode($cvs->{'mode'}); |
||||
push(@new,[$mode, $sha, $fn]); # may be resurrected! |
||||
- } elsif($state =3D=3D 9 and /^\s+(\S+):\d(?:\.\d+)+->(\d(?:\.\d+)+)\(= |
||||
DEAD\)\s*$/) { |
||||
+ } elsif($state =3D=3D 9 and /^\s+(\S+):\d+(?:\.\d+)+->(\d+(?:\.\d+)+)= |
||||
\(DEAD\)\s*$/) { |
||||
my $fn =3D $1; |
||||
$fn =3D~ s#^/+##; |
||||
push(@old,$fn); |
||||
|
||||
--=20 |
||||
David K=E5gedal |
||||
- |
||||
To unsubscribe from this list: send the line "unsubscribe git" in |
||||
the body of a message to majordomo@vger.kernel.org |
||||
More majordomo info at http://vger.kernel.org/majordomo-info.html |
||||
|
Loading…
Reference in new issue