* format-patch signoff argument no longer works
[not found] <93c3eada0605310332p19241861g466e1516a2aaf0df@mail.gmail.com>
@ 2006-05-31 11:11 ` Geoff Russell
2006-05-31 11:28 ` Matthias Kestenholz
0 siblings, 1 reply; 15+ messages in thread
From: Geoff Russell @ 2006-05-31 11:11 UTC (permalink / raw)
To: git
Hi,
The --signoff argument no longer works in git-format-patch. Was this
intentional?
It still appears in the documentation for the command.
It appears to have got lost when the shell script got converted to C.
Cheers,
Geoff Russell
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: format-patch signoff argument no longer works
2006-05-31 11:11 ` format-patch signoff argument no longer works Geoff Russell
@ 2006-05-31 11:28 ` Matthias Kestenholz
2006-05-31 13:58 ` Seth Falcon
2006-05-31 14:14 ` [PATCH] Update documentation for git-format-patch Dennis Stosberg
0 siblings, 2 replies; 15+ messages in thread
From: Matthias Kestenholz @ 2006-05-31 11:28 UTC (permalink / raw)
To: geoff; +Cc: git
* Geoff Russell (geoffrey.russell@gmail.com) wrote:
> The --signoff argument no longer works in git-format-patch. Was this
> intentional?
> It still appears in the documentation for the command.
>
> It appears to have got lost when the shell script got converted to C.
>
Yes, this was intentional. You should sign off your changes while
committing (git commit -s|--signoff)
Thanks,
Matthias
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: format-patch signoff argument no longer works
2006-05-31 11:28 ` Matthias Kestenholz
@ 2006-05-31 13:58 ` Seth Falcon
2006-05-31 14:09 ` Johannes Schindelin
2006-05-31 19:02 ` Junio C Hamano
2006-05-31 14:14 ` [PATCH] Update documentation for git-format-patch Dennis Stosberg
1 sibling, 2 replies; 15+ messages in thread
From: Seth Falcon @ 2006-05-31 13:58 UTC (permalink / raw)
To: git
Matthias Kestenholz <lists@spinlock.ch> writes:
> * Geoff Russell (geoffrey.russell@gmail.com) wrote:
>> It appears to have got lost when the shell script got converted to C.
>>
> Yes, this was intentional. You should sign off your changes while
> committing (git commit -s|--signoff)
When should one commit _without_ signoff?
The obvious answer is: when one doesn't approve of the changes in the
commit... But in my usual workflow, commit means
works-for-me-I-think-it-is-good. :-)
Also, here's a trivial patch to the git-format-patch doc. I recently
had the same confusion trying to get git-format-patch to add signoff
for me...
Remove reference to signoff option (-s) in git-format-patch
Signed-off-by: Seth Falcon <sethfalcon@gmail.com>
---
Documentation/git-format-patch.txt | 6 +-----
1 files changed, 1 insertions(+), 5 deletions(-)
diff --git a/Documentation/git-format-patch.txt b/Documentation/git-format-patch.txt
index 7cc7faf..d13f463 100644
--- a/Documentation/git-format-patch.txt
+++ b/Documentation/git-format-patch.txt
@@ -9,7 +9,7 @@ git-format-patch - Prepare patches for e
SYNOPSIS
--------
[verse]
-'git-format-patch' [-n | -k] [-o <dir> | --stdout] [--attach] [-s] [-c]
+'git-format-patch' [-n | -k] [-o <dir> | --stdout] [--attach] [-c]
[--diff-options] <his> [<mine>]
DESCRIPTION
@@ -44,10 +44,6 @@ OPTIONS
Do not strip/add '[PATCH]' from the first line of the
commit log message.
--s|--signoff::
- Add `Signed-off-by:` line to the commit message, using
- the committer identity of yourself.
-
-c|--check::
Display suspicious lines in the patch. The definition
of 'suspicious lines' is currently the lines that has
--
1.3.3.gb931
^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: format-patch signoff argument no longer works
2006-05-31 13:58 ` Seth Falcon
@ 2006-05-31 14:09 ` Johannes Schindelin
2006-05-31 19:02 ` Junio C Hamano
1 sibling, 0 replies; 15+ messages in thread
From: Johannes Schindelin @ 2006-05-31 14:09 UTC (permalink / raw)
To: Seth Falcon; +Cc: git
Hi,
On Wed, 31 May 2006, Seth Falcon wrote:
> Matthias Kestenholz <lists@spinlock.ch> writes:
>
> > * Geoff Russell (geoffrey.russell@gmail.com) wrote:
> >> It appears to have got lost when the shell script got converted to C.
> >>
> > Yes, this was intentional. You should sign off your changes while
> > committing (git commit -s|--signoff)
>
> When should one commit _without_ signoff?
>
> The obvious answer is: when one doesn't approve of the changes in the
> commit... But in my usual workflow, commit means
> works-for-me-I-think-it-is-good. :-)
Well, there are often times when I commit something to a throw-away
branch, where I do not want to sign it off.
That was my original incentive to add this option BTW: I usually clean up
a patch series in a cycle of tests and fixes, and only want to sign off on
the final version.
If people need this option, I'll implement it, so speak up!
Ciao,
Dscho
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH] Update documentation for git-format-patch
2006-05-31 11:28 ` Matthias Kestenholz
2006-05-31 13:58 ` Seth Falcon
@ 2006-05-31 14:14 ` Dennis Stosberg
2006-05-31 15:00 ` Johannes Schindelin
2006-05-31 15:24 ` Jakub Narebski
1 sibling, 2 replies; 15+ messages in thread
From: Dennis Stosberg @ 2006-05-31 14:14 UTC (permalink / raw)
To: Matthias Kestenholz; +Cc: geoff, git
Signed-off-by: Dennis Stosberg <dennis@stosberg.net>
---
This updates the documentation for git-format-patch to reflect the
changes that the built-in version brought.
In addition to the functional changes, I reworded a few expressions
which sounded suspicious or unclear to me. However, I'm not a
native English speaker, so corrections are welcome.
Is there any "patch" program at all that understands git's rename
patches?
Regards,
Dennis
Documentation/git-format-patch.txt | 82 +++++++++++++++---------------------
1 files changed, 35 insertions(+), 47 deletions(-)
diff --git a/Documentation/git-format-patch.txt b/Documentation/git-format-patch.txt
index 7cc7faf..64d3f1e 100644
--- a/Documentation/git-format-patch.txt
+++ b/Documentation/git-format-patch.txt
@@ -9,70 +9,58 @@ git-format-patch - Prepare patches for e
SYNOPSIS
--------
[verse]
-'git-format-patch' [-n | -k] [-o <dir> | --stdout] [--attach] [-s] [-c]
- [--diff-options] <his> [<mine>]
+'git-format-patch' [-n | -k] [-o <dir> | --stdout] [--attach]
+ [--diff-options] [--start-number <n>]
+ <since>[..<until>]
DESCRIPTION
-----------
-Prepare each commit with its patch since <mine> head forked from
-<his> head, one file per patch formatted to resemble UNIX mailbox
-format, for e-mail submission or use with gitlink:git-am[1].
+
+Prepare each commit between <since> and <until> with its patch in
+one file per commit, formatted to resemble UNIX mailbox format.
+If ..<until> is not specified, the head of the current working
+tree is implied.
+
+The output of this command is convenient for e-mail submission or
+for use with gitlink:git-am[1].
Each output file is numbered sequentially from 1, and uses the
-first line of the commit message (massaged for pathname safety)
-as the filename.
+first line of the commit message (checked for pathname safety) as
+the filename. The names of the output files are printed to standard
+output, unless the --stdout option is specified.
-When -o is specified, output files are created in <dir>; otherwise
-they are created in the current working directory. This option
-is ignored if --stdout is specified.
+If -o is specified, output files are created in <dir>. Otherwise
+they are created in the current working directory.
-When -n is specified, instead of "[PATCH] Subject", the first
-line is formatted as "[PATCH N/M] Subject", unless you have only
-one patch.
+If -n is specified, instead of "[PATCH] Subject", the first line
+is formatted as "[PATCH n/m] Subject".
OPTIONS
-------
-o|--output-directory <dir>::
Use <dir> to store the resulting files, instead of the
- current working directory.
+ current working directory. This option is ignored if
+ --stdout is specified.
-n|--numbered::
Name output in '[PATCH n/m]' format.
+--start-number <n>::
+ Start numbering the patches with <n> instead of 1.
+
-k|--keep-subject::
Do not strip/add '[PATCH]' from the first line of the
commit log message.
--s|--signoff::
- Add `Signed-off-by:` line to the commit message, using
- the committer identity of yourself.
-
--c|--check::
- Display suspicious lines in the patch. The definition
- of 'suspicious lines' is currently the lines that has
- trailing whitespaces, and the lines whose indentation
- has a SP character immediately followed by a TAB
- character.
-
--stdout::
- This flag generates the mbox formatted output to the
- standard output, instead of saving them into a file per
- patch and implies --mbox.
+ Print all commits to the standard output in mbox format,
+ instead of creating a file for each one.
--attach::
Create attachments instead of inlining patches.
-CONFIGURATION
--------------
-You can specify extra mail header lines to be added to each
-message in the repository configuration as follows:
-
-[format]
- headers = "Organization: git-foo\n"
-
-
EXAMPLES
--------
@@ -82,18 +70,18 @@ git-format-patch -k --stdout R1..R2 | gi
cherry-pick them.
git-format-patch origin::
- Extract commits the current branch accumulated since it
- pulled from origin the last time in a patch form for
- e-mail submission.
+ Extract all commits which are in the current branch but
+ not in the origin branch. For each commit a separate file
+ is created in the current directory.
git-format-patch -M -B origin::
- The same as the previous one, except detect and handle
- renames and complete rewrites intelligently to produce
- renaming patch. A renaming patch reduces the amount of
- text output, and generally makes it easier to review
- it. Note that the "patch" program does not understand
- renaming patch well, so use it only when you know the
- recipient uses git to apply your patch.
+ The same as the previous one. Additionally, it detects
+ and handles renames and complete rewrites intelligently to
+ produce a renaming patch. A renaming patch reduces the
+ amount of text output, and generally makes it easier to
+ review it. Note that the "patch" program does not
+ understand renaming patches, so use it only when you know
+ the recipient uses git to apply your patch.
See Also
--
1.3.3+git20060531-dest1
^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: [PATCH] Update documentation for git-format-patch
2006-05-31 14:14 ` [PATCH] Update documentation for git-format-patch Dennis Stosberg
@ 2006-05-31 15:00 ` Johannes Schindelin
2006-05-31 15:24 ` Jakub Narebski
1 sibling, 0 replies; 15+ messages in thread
From: Johannes Schindelin @ 2006-05-31 15:00 UTC (permalink / raw)
To: Dennis Stosberg; +Cc: Matthias Kestenholz, geoff, git
Hi,
On Wed, 31 May 2006, Dennis Stosberg wrote:
> Is there any "patch" program at all that understands git's rename
> patches?
Why, yes: git-apply!
Ciao,
Dscho
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] Update documentation for git-format-patch
2006-05-31 14:14 ` [PATCH] Update documentation for git-format-patch Dennis Stosberg
2006-05-31 15:00 ` Johannes Schindelin
@ 2006-05-31 15:24 ` Jakub Narebski
2006-05-31 17:24 ` Dennis Stosberg
1 sibling, 1 reply; 15+ messages in thread
From: Jakub Narebski @ 2006-05-31 15:24 UTC (permalink / raw)
To: git
Dennis Stosberg wrote:
> --c|--check::
> - Display suspicious lines in the patch. The definition
> - of 'suspicious lines' is currently the lines that has
> - trailing whitespaces, and the lines whose indentation
> - has a SP character immediately followed by a TAB
> - character.
So is this option also lost in built-in git-format-patch?
> -CONFIGURATION
> --------------
> -You can specify extra mail header lines to be added to each
> -message in the repository configuration as follows:
> -
> -[format]
> - headers = "Organization: git-foo\n"
So is this configuration option also lost in built-in git-format-patch?
--
Jakub Narebski
Warsaw, Poland
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] Update documentation for git-format-patch
2006-05-31 15:24 ` Jakub Narebski
@ 2006-05-31 17:24 ` Dennis Stosberg
0 siblings, 0 replies; 15+ messages in thread
From: Dennis Stosberg @ 2006-05-31 17:24 UTC (permalink / raw)
To: git
Jakub Narebski wrote:
> Dennis Stosberg wrote:
>
> > - Display suspicious lines in the patch. The definition
> > - of 'suspicious lines' is currently the lines that has
> > - trailing whitespaces, and the lines whose indentation
> > - has a SP character immediately followed by a TAB
> > - character.
>
> So is this option also lost in built-in git-format-patch?
Johannes Schindelin made that one a diff option, so it can be used in
other ways, too. I think it should be documented in diff-options.txt.
> > -CONFIGURATION
> > -You can specify extra mail header lines to be added to each
> > -message in the repository configuration as follows:
> > -
> > -[format]
> > - headers = "Organization: git-foo\n"
>
> So is this configuration option also lost in built-in git-format-patch?
Grep'ing the sources, I couldn't find any trace of it.
Regards,
Dennis
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: format-patch signoff argument no longer works
2006-05-31 13:58 ` Seth Falcon
2006-05-31 14:09 ` Johannes Schindelin
@ 2006-05-31 19:02 ` Junio C Hamano
2006-05-31 19:19 ` J. Bruce Fields
` (2 more replies)
1 sibling, 3 replies; 15+ messages in thread
From: Junio C Hamano @ 2006-05-31 19:02 UTC (permalink / raw)
To: git; +Cc: Seth Falcon
Seth Falcon <sethfalcon@gmail.com> writes:
> Matthias Kestenholz <lists@spinlock.ch> writes:
>
>> * Geoff Russell (geoffrey.russell@gmail.com) wrote:
>>> It appears to have got lost when the shell script got converted to C.
>>>
>> Yes, this was intentional. You should sign off your changes while
>> committing (git commit -s|--signoff)
A bit on this later, but first to clear one thing up...
> When should one commit _without_ signoff?
>
> The obvious answer is: when one doesn't approve of the changes in the
> commit... But in my usual workflow, commit means
> works-for-me-I-think-it-is-good. :-)
Please, calm down and read Documentation/SubmittingPatches,
item (6), to understand what sign-off means. It does not have
anything to do with the result of the commit "working". I do
not use -s when making commits during my day-job, for example.
We do not want to make sign-off the default. It has to be a
concious act on the signer's part to add one. Otherwise it
would not carry much weight.
About the droppage of "format-patch -s", I have come to think of
it as a mistake (yes, I can change my mind). Consider:
* You are the leader of a group of people who hack on a part of
the kernel, internally in your company. You and other
developers make improvements and make commits, with "git
commit -s".
* As the in-company integrator, you maintain the canonical
"company tree" by pulling from others in your group.
* It's time to send good pieces to Linus and/or Andrew and as
the group lead you are responsible for sending them out. The
commits would have Sign-off's by the original committers, but
as the contact person (representative) of your group, your
name is better recognizable in the outside community, and as
the leader of your group, it is a good practice for _you_ to
vouch for what your group did.
In that scenario, in addition to what "commit -s" gives us, it
is handy for the person who is sending the patches out via
e-mail to add his own sign-off.
Now, we could do that by re-adding "format-patch -s" option, or
alternatively we could add that to "send-email". We might want
to do both ;-)
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: format-patch signoff argument no longer works
2006-05-31 19:02 ` Junio C Hamano
@ 2006-05-31 19:19 ` J. Bruce Fields
2006-05-31 19:43 ` Seth Falcon
2006-05-31 22:14 ` [PATCH] format-patch --signoff Junio C Hamano
2 siblings, 0 replies; 15+ messages in thread
From: J. Bruce Fields @ 2006-05-31 19:19 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git, Seth Falcon
On Wed, May 31, 2006 at 12:02:33PM -0700, Junio C Hamano wrote:
> Now, we could do that by re-adding "format-patch -s" option, or
> alternatively we could add that to "send-email". We might want
> to do both ;-)
Personally, just to give myself the best change of catching problems
with the outgoing email, I'd prefer to have as much as possible be done
*before* send-email, so whatever I review is as close to what's sent out
as possible.
--b.
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: format-patch signoff argument no longer works
2006-05-31 19:02 ` Junio C Hamano
2006-05-31 19:19 ` J. Bruce Fields
@ 2006-05-31 19:43 ` Seth Falcon
2006-05-31 22:14 ` [PATCH] format-patch --signoff Junio C Hamano
2 siblings, 0 replies; 15+ messages in thread
From: Seth Falcon @ 2006-05-31 19:43 UTC (permalink / raw)
To: git
Junio C Hamano <junkio@cox.net> writes:
> Seth Falcon <sethfalcon@gmail.com> writes:
>> When should one commit _without_ signoff?
>
> Please, calm down and read Documentation/SubmittingPatches,
> item (6), to understand what sign-off means. It does not have
> anything to do with the result of the commit "working". I do
> not use -s when making commits during my day-job, for example.
Doh! In glancing through the Documentation dir I missed the
SubmittingPatches file. [weak excuse: there are many doc files in that
dir and most are for the commands themselves. I expected this to be
in howto/.]
Anyhow, much calmer now (apologies if I sounded un-calm, that wasn't
my intention). The SubmittingPatches doc was _exactly_ what I was
looking for when I posted my original question [*]. My bad for not
finding it when it was staring me in the face. Thanks for bearing
with me and pointing me to the fine manual :-)
[*] http://marc.theaimsgroup.com/?l=git&m=114884854119660&w=2
^ permalink raw reply [flat|nested] 15+ messages in thread
* [PATCH] format-patch --signoff
2006-05-31 19:02 ` Junio C Hamano
2006-05-31 19:19 ` J. Bruce Fields
2006-05-31 19:43 ` Seth Falcon
@ 2006-05-31 22:14 ` Junio C Hamano
2006-05-31 22:42 ` Johannes Schindelin
2 siblings, 1 reply; 15+ messages in thread
From: Junio C Hamano @ 2006-05-31 22:14 UTC (permalink / raw)
To: Geoff Russell, Marco Costalba, Johannes Schindelin; +Cc: git, Seth Falcon
This resurrects --signoff option to format-patch.
Signed-off-by: Junio C Hamano <junkio@cox.net>
---
builtin-log.c | 18 ++++++++++++++++--
log-tree.c | 35 +++++++++++++++++++++++++++++++++++
revision.h | 1 +
3 files changed, 52 insertions(+), 2 deletions(-)
diff --git a/builtin-log.c b/builtin-log.c
index db1912a..ac4822d 100644
--- a/builtin-log.c
+++ b/builtin-log.c
@@ -150,6 +150,7 @@ int cmd_format_patch(int argc, const cha
int numbered = 0;
int start_number = -1;
int keep_subject = 0;
+ char *add_signoff = NULL;
init_revisions(&rev);
rev.commit_format = CMIT_FMT_EMAIL;
@@ -179,11 +180,13 @@ int cmd_format_patch(int argc, const cha
if (i == argc)
die("Need a number for --start-number");
start_number = strtol(argv[i], NULL, 10);
- } else if (!strcmp(argv[i], "-k") ||
+ }
+ else if (!strcmp(argv[i], "-k") ||
!strcmp(argv[i], "--keep-subject")) {
keep_subject = 1;
rev.total = -1;
- } else if (!strcmp(argv[i], "-o")) {
+ }
+ else if (!strcmp(argv[i], "-o")) {
if (argc < 3)
die ("Which directory?");
if (mkdir(argv[i + 1], 0777) < 0 && errno != EEXIST)
@@ -192,6 +195,16 @@ int cmd_format_patch(int argc, const cha
output_directory = strdup(argv[i + 1]);
i++;
}
+ else if (!strcmp(argv[i], "--signoff") ||
+ !strcmp(argv[i], "-s")) {
+ const char *committer = git_committer_info(1);
+ const char *endpos = strchr(committer, '>');
+ if (!endpos)
+ die("bogos committer info %s\n", committer);
+ add_signoff = xmalloc(endpos - committer + 2);
+ memcpy(add_signoff, committer, endpos - committer + 1);
+ add_signoff[endpos - committer + 1] = 0;
+ }
else if (!strcmp(argv[i], "--attach"))
rev.mime_boundary = git_version_string;
else if (!strncmp(argv[i], "--attach=", 9))
@@ -230,6 +243,7 @@ int cmd_format_patch(int argc, const cha
total = nr;
if (numbered)
rev.total = total + start_number - 1;
+ rev.add_signoff = add_signoff;
while (0 <= --nr) {
int shown;
commit = list[nr];
diff --git a/log-tree.c b/log-tree.c
index 58b0163..e86e16b 100644
--- a/log-tree.c
+++ b/log-tree.c
@@ -12,6 +12,37 @@ static void show_parents(struct commit *
}
}
+static int append_signoff(char *buf, int buf_sz, int at, const char *signoff)
+{
+ int signoff_len = strlen(signoff);
+ static const char signed_off_by[] = "Signed-off-by: ";
+ char *cp = buf;
+
+ /* Do we have enough space to add it? */
+ if (buf_sz - at <= strlen(signed_off_by) + signoff_len + 2)
+ return at;
+
+ /* First see if we already have the sign-off by the signer */
+ while (1) {
+ cp = strstr(cp, signed_off_by);
+ if (!cp)
+ break;
+ cp += strlen(signed_off_by);
+ if ((cp + signoff_len < buf + at) &&
+ !strncmp(cp, signoff, signoff_len) &&
+ isspace(cp[signoff_len]))
+ return at; /* we already have him */
+ }
+
+ strcpy(buf + at, signed_off_by);
+ at += strlen(signed_off_by);
+ strcpy(buf + at, signoff);
+ at += signoff_len;
+ buf[at++] = '\n';
+ buf[at] = 0;
+ return at;
+}
+
void show_log(struct rev_info *opt, struct log_info *log, const char *sep)
{
static char this_header[16384];
@@ -111,6 +142,10 @@ void show_log(struct rev_info *opt, stru
* And then the pretty-printed message itself
*/
len = pretty_print_commit(opt->commit_format, commit, ~0u, this_header, sizeof(this_header), abbrev, subject, after_subject);
+
+ if (opt->add_signoff)
+ len = append_signoff(this_header, sizeof(this_header), len,
+ opt->add_signoff);
printf("%s%s%s", this_header, extra, sep);
}
diff --git a/revision.h b/revision.h
index bdbdd23..75796bc 100644
--- a/revision.h
+++ b/revision.h
@@ -60,6 +60,7 @@ struct rev_info {
struct log_info *loginfo;
int nr, total;
const char *mime_boundary;
+ const char *add_signoff;
/* special limits */
int max_count;
--
1.3.3.g1361-dirty
^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: [PATCH] format-patch --signoff
2006-05-31 22:14 ` [PATCH] format-patch --signoff Junio C Hamano
@ 2006-05-31 22:42 ` Johannes Schindelin
2006-05-31 23:16 ` Junio C Hamano
0 siblings, 1 reply; 15+ messages in thread
From: Johannes Schindelin @ 2006-05-31 22:42 UTC (permalink / raw)
To: Junio C Hamano; +Cc: Geoff Russell, Marco Costalba, git, Seth Falcon
Hi,
On Wed, 31 May 2006, Junio C Hamano wrote:
> This resurrects --signoff option to format-patch.
Sorry; I was in cinema, so I missed all the action.
> + const char *committer = git_committer_info(1);
> + const char *endpos = strchr(committer, '>');
> + if (!endpos)
> + die("bogos committer info %s\n", committer);
> + add_signoff = xmalloc(endpos - committer + 2);
> + memcpy(add_signoff, committer, endpos - committer + 1);
> + add_signoff[endpos - committer + 1] = 0;
> + }
I don't know, but it may be a good idea to make this more general: Why not
build the sign-off line here, so that you could also add more than one
sign-off lines ('--signoff="The great committer <ter@mit.com>"'), and
maybe even Acked-by's?
> + /* First see if we already have the sign-off by the signer */
> + while (1) {
> + cp = strstr(cp, signed_off_by);
> + if (!cp)
> + break;
> + cp += strlen(signed_off_by);
> + if ((cp + signoff_len < buf + at) &&
> + !strncmp(cp, signoff, signoff_len) &&
> + isspace(cp[signoff_len]))
> + return at; /* we already have him */
> + }
Okay, this would be a little harder with multiple sign-offs. But the check
could be easier, i.e. if we say
rev.add_signoff = xmalloc(enough_room);
strcpy(rev.add_signoff, "\nSigned-off-by: ");
strcat(rev.add_signoff, committer_ident);
strcat(rev.add_signoff, "\n");
then a simple
p = strstr(commit_buffer, rev.add_signoff);
if (p)
return (int)(p - commit_buffer);
would do the trick.
And shouldn't we error out if there is not enough room for a sign-off?
Sorry for all the nit-picking.
Ciao,
Dscho
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] format-patch --signoff
2006-05-31 22:42 ` Johannes Schindelin
@ 2006-05-31 23:16 ` Junio C Hamano
2006-05-31 23:31 ` Johannes Schindelin
0 siblings, 1 reply; 15+ messages in thread
From: Junio C Hamano @ 2006-05-31 23:16 UTC (permalink / raw)
To: Johannes Schindelin; +Cc: Geoff Russell, Marco Costalba, git, Seth Falcon
Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
> I don't know, but it may be a good idea to make this more general: Why not
> build the sign-off line here, so that you could also add more than one
> sign-off lines ('--signoff="The great committer <ter@mit.com>"'), and
> maybe even Acked-by's?
Perhaps.
> Okay, this would be a little harder with multiple sign-offs. But the check
> could be easier, i.e. if we say
>
> rev.add_signoff = xmalloc(enough_room);
> strcpy(rev.add_signoff, "\nSigned-off-by: ");
> strcat(rev.add_signoff, committer_ident);
> strcat(rev.add_signoff, "\n");
>
> then a simple
>
> p = strstr(commit_buffer, rev.add_signoff);
> if (p)
> return (int)(p - commit_buffer);
>
> would do the trick.
Do you mean, by "multiple sign-offs", something like this?
for (so_list = rev.add_signoff; so_list; so_list = so_list->next) {
if (strstr(commit_buffer, so_list->item))
continue;
append_to_commit_buffer(so_list->item);
}
return tail - commit_buffer;
> And shouldn't we error out if there is not enough room for a sign-off?
I do not think we error out if the commit message is too long
either, so...
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [PATCH] format-patch --signoff
2006-05-31 23:16 ` Junio C Hamano
@ 2006-05-31 23:31 ` Johannes Schindelin
0 siblings, 0 replies; 15+ messages in thread
From: Johannes Schindelin @ 2006-05-31 23:31 UTC (permalink / raw)
To: Junio C Hamano; +Cc: Geoff Russell, Marco Costalba, git, Seth Falcon
Hi,
On Wed, 31 May 2006, Junio C Hamano wrote:
> Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
>
> > I don't know, but it may be a good idea to make this more general: Why not
> > build the sign-off line here, so that you could also add more than one
> > sign-off lines ('--signoff="The great committer <ter@mit.com>"'), and
> > maybe even Acked-by's?
>
> Perhaps.
>
> > Okay, this would be a little harder with multiple sign-offs. But the check
> > could be easier, i.e. if we say
> >
> > rev.add_signoff = xmalloc(enough_room);
> > strcpy(rev.add_signoff, "\nSigned-off-by: ");
> > strcat(rev.add_signoff, committer_ident);
> > strcat(rev.add_signoff, "\n");
> >
> > then a simple
> >
> > p = strstr(commit_buffer, rev.add_signoff);
> > if (p)
> > return (int)(p - commit_buffer);
> >
> > would do the trick.
>
> Do you mean, by "multiple sign-offs", something like this?
>
> for (so_list = rev.add_signoff; so_list; so_list = so_list->next) {
> if (strstr(commit_buffer, so_list->item))
> continue;
> append_to_commit_buffer(so_list->item);
> }
> return tail - commit_buffer;
Actually, I did not think of a linked list, but one buffer, but I like
your solution better.
> > And shouldn't we error out if there is not enough room for a sign-off?
>
> I do not think we error out if the commit message is too long
> either, so...
... so you could say that should be an error, too.
Ciao,
Dscho
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2006-05-31 23:32 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <93c3eada0605310332p19241861g466e1516a2aaf0df@mail.gmail.com>
2006-05-31 11:11 ` format-patch signoff argument no longer works Geoff Russell
2006-05-31 11:28 ` Matthias Kestenholz
2006-05-31 13:58 ` Seth Falcon
2006-05-31 14:09 ` Johannes Schindelin
2006-05-31 19:02 ` Junio C Hamano
2006-05-31 19:19 ` J. Bruce Fields
2006-05-31 19:43 ` Seth Falcon
2006-05-31 22:14 ` [PATCH] format-patch --signoff Junio C Hamano
2006-05-31 22:42 ` Johannes Schindelin
2006-05-31 23:16 ` Junio C Hamano
2006-05-31 23:31 ` Johannes Schindelin
2006-05-31 14:14 ` [PATCH] Update documentation for git-format-patch Dennis Stosberg
2006-05-31 15:00 ` Johannes Schindelin
2006-05-31 15:24 ` Jakub Narebski
2006-05-31 17:24 ` Dennis Stosberg
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).