mirror of
https://github.com/git/git.git
synced 2024-12-06 00:14:36 +08:00
dc801e71a7
Number of columns required for change counts is now computed based on the maximum number of changed lines instead of being fixed. This means that usually a few more columns will be available for the filenames and the graph. The graph width logic is also modified to include enough space for "Bin XXX -> YYY bytes". If changes to binary files are mixed with changes to text files, change counts are padded to take at least three columns. And the other way around, if change counts require more than three columns, then "Bin"s are padded to align with the change count. This way, the +- part starts in the same column as "XXX -> YYY" part for binary files. This makes the graph easier to parse visually thanks to the empty column. This mimics the layout of diff --stat before this change. Tests and the tutorial are updated to reflect the new --stat output. This means either the removal of extra padding and/or the addition of up to three extra characters to truncated filenames. One test is added to check the graph alignment when a binary file change and text file change of more than 999 lines are committed together. Signed-off-by: Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> Signed-off-by: Junio C Hamano <gitster@pobox.com>
686 lines
20 KiB
Plaintext
686 lines
20 KiB
Plaintext
|
||
|
||
|
||
From nobody Mon Sep 17 00:00:00 2001
|
||
From: A (zzz)
|
||
U
|
||
Thor
|
||
<a.u.thor@example.com> (Comment)
|
||
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: =?ISO8859-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=ISO8859-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
|
||
|
||
From nobody Mon Sep 17 00:00:00 2001
|
||
From: A U Thor <a.u.thor@example.com>
|
||
References: <Pine.LNX.4.640.0001@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0002@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0003@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0004@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0005@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0006@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0007@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0008@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0009@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0010@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0011@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0012@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0013@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0014@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0015@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0016@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0017@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0018@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0019@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0020@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0021@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0022@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0023@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0024@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0025@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0026@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0027@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0028@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0029@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0030@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0031@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0032@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0033@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0034@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0035@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0036@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0037@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0038@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0039@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0040@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0041@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0042@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0043@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0044@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0045@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0046@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0047@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0048@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0049@woody.linux-foundation.org>
|
||
<Pine.LNX.4.640.0050@woody.linux-foundation.org>
|
||
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 an empty patch from A U Thor.
|
||
|
||
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] another patch
|
||
>Here is an empty patch from A U Thor.
|
||
|
||
Hey you forgot the patch!
|
||
|
||
From nobody Mon Sep 17 00:00:00 2001
|
||
From: A U Thor <a.u.thor@example.com>
|
||
Date: Mon, 17 Sep 2001 00:00:00 +0900
|
||
Mime-Version: 1.0
|
||
Content-Type: Text/Plain; charset=us-ascii
|
||
Content-Transfer-Encoding: Quoted-Printable
|
||
|
||
=0A=0AFrom: F U Bar <f.u.bar@example.com>
|
||
Subject: [PATCH] updates=0A=0AThis is to fix diff-format documentation.
|
||
|
||
diff --git a/Documentation/diff-format.txt b/Documentation/diff-format.txt
|
||
index b426a14..97756ec 100644
|
||
--- a/Documentation/diff-format.txt
|
||
+++ b/Documentation/diff-format.txt
|
||
@@ -81,7 +81,7 @@ The "diff" formatting options can be customized via the
|
||
environment variable 'GIT_DIFF_OPTS'. For example, if you
|
||
prefer context diff:
|
||
=20
|
||
- GIT_DIFF_OPTS=3D-c git-diff-index -p $(cat .git/HEAD)
|
||
+ GIT_DIFF_OPTS=3D-c git-diff-index -p HEAD
|
||
=20
|
||
=20
|
||
2. When the environment variable 'GIT_EXTERNAL_DIFF' is set, the
|
||
From b9704a518e21158433baa2cc2d591fea687967f6 Mon Sep 17 00:00:00 2001
|
||
From: =?UTF-8?q?Lukas=20Sandstr=C3=B6m?= <lukass@etek.chalmers.se>
|
||
Date: Thu, 10 Jul 2008 23:41:33 +0200
|
||
Subject: Re: discussion that lead to this patch
|
||
MIME-Version: 1.0
|
||
Content-Type: text/plain; charset=UTF-8
|
||
Content-Transfer-Encoding: 8bit
|
||
|
||
[PATCH] git-mailinfo: Fix getting the subject from the body
|
||
|
||
"Subject: " isn't in the static array "header", and thus
|
||
memcmp("Subject: ", header[i], 7) will never match.
|
||
|
||
Signed-off-by: Lukas Sandström <lukass@etek.chalmers.se>
|
||
Signed-off-by: Junio C Hamano <gitster@pobox.com>
|
||
---
|
||
builtin-mailinfo.c | 2 +-
|
||
1 files changed, 1 insertions(+), 1 deletions(-)
|
||
|
||
diff --git a/builtin-mailinfo.c b/builtin-mailinfo.c
|
||
index 962aa34..2d1520f 100644
|
||
--- a/builtin-mailinfo.c
|
||
+++ b/builtin-mailinfo.c
|
||
@@ -334,7 +334,7 @@ static int check_header(char *line, unsigned linesize, char **hdr_data, int over
|
||
return 1;
|
||
if (!memcmp("[PATCH]", line, 7) && isspace(line[7])) {
|
||
for (i = 0; header[i]; i++) {
|
||
- if (!memcmp("Subject: ", header[i], 9)) {
|
||
+ if (!memcmp("Subject", header[i], 7)) {
|
||
if (! handle_header(line, hdr_data[i], 0)) {
|
||
return 1;
|
||
}
|
||
--
|
||
1.5.6.2.455.g1efb2
|
||
|
||
From nobody Fri Aug 8 22:24:03 2008
|
||
Date: Fri, 8 Aug 2008 13:08:37 +0200 (CEST)
|
||
From: A U Thor <a.u.thor@example.com>
|
||
Subject: [PATCH 3/3 v2] Xyzzy
|
||
MIME-Version: 1.0
|
||
Content-Type: multipart/mixed; boundary="=-=-="
|
||
|
||
--=-=-=
|
||
Content-Type: text/plain; charset=ISO8859-15
|
||
Content-Transfer-Encoding: quoted-printable
|
||
|
||
Here comes a commit log message, and
|
||
its second line is here.
|
||
---
|
||
builtin-mailinfo.c | 4 ++--
|
||
|
||
diff --git a/builtin-mailinfo.c b/builtin-mailinfo.c
|
||
index 3e5fe51..aabfe5c 100644
|
||
--- a/builtin-mailinfo.c
|
||
+++ b/builtin-mailinfo.c
|
||
@@ -758,8 +758,8 @@ static void handle_body(void)
|
||
/* process any boundary lines */
|
||
if (*content_top && is_multipart_boundary(&line)) {
|
||
/* flush any leftover */
|
||
- if (line.len)
|
||
- handle_filter(&line);
|
||
+ if (prev.len)
|
||
+ handle_filter(&prev);
|
||
=20
|
||
if (!handle_boundary())
|
||
goto handle_body_out;
|
||
--=20
|
||
1.6.0.rc2
|
||
|
||
--=-=-=--
|
||
|
||
From bda@mnsspb.ru Wed Nov 12 17:54:41 2008
|
||
From: Dmitriy Blinov <bda@mnsspb.ru>
|
||
To: navy-patches@dinar.mns.mnsspb.ru
|
||
Date: Wed, 12 Nov 2008 17:54:41 +0300
|
||
Message-Id: <1226501681-24923-1-git-send-email-bda@mnsspb.ru>
|
||
X-Mailer: git-send-email 1.5.6.5
|
||
MIME-Version: 1.0
|
||
Content-Type: text/plain;
|
||
charset=utf-8
|
||
Content-Transfer-Encoding: 8bit
|
||
Subject: [Navy-patches] [PATCH]
|
||
=?utf-8?b?0JjQt9C80LXQvdGR0L0g0YHQv9C40YHQvtC6INC/0LA=?=
|
||
=?utf-8?b?0LrQtdGC0L7QsiDQvdC10L7QsdGF0L7QtNC40LzRi9GFINC00LvRjyA=?=
|
||
=?utf-8?b?0YHQsdC+0YDQutC4?=
|
||
|
||
textlive-* исправлены на texlive-*
|
||
docutils заменён на python-docutils
|
||
|
||
Действительно, оказалось, что rest2web вытягивает за собой
|
||
python-docutils. В то время как сам rest2web не нужен.
|
||
|
||
Signed-off-by: Dmitriy Blinov <bda@mnsspb.ru>
|
||
---
|
||
howto/build_navy.txt | 6 +++---
|
||
1 files changed, 3 insertions(+), 3 deletions(-)
|
||
|
||
diff --git a/howto/build_navy.txt b/howto/build_navy.txt
|
||
index 3fd3afb..0ee807e 100644
|
||
--- a/howto/build_navy.txt
|
||
+++ b/howto/build_navy.txt
|
||
@@ -119,8 +119,8 @@
|
||
- libxv-dev
|
||
- libusplash-dev
|
||
- latex-make
|
||
- - textlive-lang-cyrillic
|
||
- - textlive-latex-extra
|
||
+ - texlive-lang-cyrillic
|
||
+ - texlive-latex-extra
|
||
- dia
|
||
- python-pyrex
|
||
- libtool
|
||
@@ -128,7 +128,7 @@
|
||
- sox
|
||
- cython
|
||
- imagemagick
|
||
- - docutils
|
||
+ - python-docutils
|
||
|
||
#. на машине dinar: добавить свой открытый ssh-ключ в authorized_keys2 пользователя ddev
|
||
#. на своей машине: отредактировать /etc/sudoers (команда ``visudo``) примерно следующим образом::
|
||
--
|
||
1.5.6.5
|
||
From nobody Mon Sep 17 00:00:00 2001
|
||
From: <a.u.thor@example.com> (A U Thor)
|
||
Date: Fri, 9 Jun 2006 00:44:16 -0700
|
||
Subject: [PATCH] a patch
|
||
|
||
From nobody Mon Sep 17 00:00:00 2001
|
||
From: Junio Hamano <junkio@cox.net>
|
||
Date: Thu, 20 Aug 2009 17:18:22 -0700
|
||
Subject: Why doesn't git-am does not like >8 scissors mark?
|
||
|
||
Subject: [PATCH] BLAH ONE
|
||
|
||
In real life, we will see a discussion that inspired this patch
|
||
discussing related and unrelated things around >8 scissors mark
|
||
in this part of the message.
|
||
|
||
Subject: [PATCH] BLAH TWO
|
||
|
||
And then we will see the scissors.
|
||
|
||
This line is not a scissors mark -- >8 -- but talks about it.
|
||
- - >8 - - please remove everything above this line - - >8 - -
|
||
|
||
Subject: [PATCH] Teach mailinfo to ignore everything before -- >8 -- mark
|
||
From: Junio C Hamano <gitster@pobox.com>
|
||
|
||
This teaches mailinfo the scissors -- >8 -- mark; the command ignores
|
||
everything before it in the message body.
|
||
|
||
Signed-off-by: Junio C Hamano <gitster@pobox.com>
|
||
---
|
||
builtin-mailinfo.c | 37 ++++++++++++++++++++++++++++++++++++-
|
||
1 files changed, 36 insertions(+), 1 deletions(-)
|
||
|
||
diff --git a/builtin-mailinfo.c b/builtin-mailinfo.c
|
||
index b0b5d8f..461c47e 100644
|
||
--- a/builtin-mailinfo.c
|
||
+++ b/builtin-mailinfo.c
|
||
@@ -712,6 +712,34 @@ static inline int patchbreak(const struct strbuf *line)
|
||
return 0;
|
||
}
|
||
|
||
+static int scissors(const struct strbuf *line)
|
||
+{
|
||
+ size_t i, len = line->len;
|
||
+ int scissors_dashes_seen = 0;
|
||
+ const char *buf = line->buf;
|
||
+
|
||
+ for (i = 0; i < len; i++) {
|
||
+ if (isspace(buf[i]))
|
||
+ continue;
|
||
+ if (buf[i] == '-') {
|
||
+ scissors_dashes_seen |= 02;
|
||
+ continue;
|
||
+ }
|
||
+ if (i + 1 < len && !memcmp(buf + i, ">8", 2)) {
|
||
+ scissors_dashes_seen |= 01;
|
||
+ i++;
|
||
+ continue;
|
||
+ }
|
||
+ if (i + 7 < len && !memcmp(buf + i, "cut here", 8)) {
|
||
+ i += 7;
|
||
+ continue;
|
||
+ }
|
||
+ /* everything else --- not scissors */
|
||
+ break;
|
||
+ }
|
||
+ return scissors_dashes_seen == 03;
|
||
+}
|
||
+
|
||
static int handle_commit_msg(struct strbuf *line)
|
||
{
|
||
static int still_looking = 1;
|
||
@@ -723,10 +751,17 @@ static int handle_commit_msg(struct strbuf *line)
|
||
strbuf_ltrim(line);
|
||
if (!line->len)
|
||
return 0;
|
||
- if ((still_looking = check_header(line, s_hdr_data, 0)) != 0)
|
||
+ still_looking = check_header(line, s_hdr_data, 0);
|
||
+ if (still_looking)
|
||
return 0;
|
||
}
|
||
|
||
+ if (scissors(line)) {
|
||
+ fseek(cmitmsg, 0L, SEEK_SET);
|
||
+ still_looking = 1;
|
||
+ return 0;
|
||
+ }
|
||
+
|
||
/* normalize the log message to UTF-8. */
|
||
if (metainfo_charset)
|
||
convert_to_utf8(line, charset.buf);
|
||
--
|
||
1.6.4.1
|
||
From nobody Mon Sep 17 00:00:00 2001
|
||
From: A U Thor <a.u.thor@example.com>
|
||
Subject: check bogus body header (from)
|
||
Date: Fri, 9 Jun 2006 00:44:16 -0700
|
||
|
||
From: bogosity
|
||
- a list
|
||
- of stuff
|
||
---
|
||
diff --git a/foo b/foo
|
||
index e69de29..d95f3ad 100644
|
||
--- a/foo
|
||
+++ b/foo
|
||
@@ -0,0 +1 @@
|
||
+content
|
||
|
||
From nobody Mon Sep 17 00:00:00 2001
|
||
From: A U Thor <a.u.thor@example.com>
|
||
Subject: check bogus body header (date)
|
||
Date: Fri, 9 Jun 2006 00:44:16 -0700
|
||
|
||
Date: bogus
|
||
|
||
and some content
|
||
|
||
---
|
||
diff --git a/foo b/foo
|
||
index e69de29..d95f3ad 100644
|
||
--- a/foo
|
||
+++ b/foo
|
||
@@ -0,0 +1 @@
|
||
+content
|
||
|