mirror of
https://github.com/git/git.git
synced 2026-03-14 10:53:25 +01:00
Merge branch 'jc/send-email' into next
* jc/send-email: git-send-email: do not drop custom headers the user prepared cherry-pick: make -r the default git-send-email: avoid uninitialized variable warning.
This commit is contained in:
@@ -7,7 +7,7 @@ git-cherry-pick - Apply the change introduced by an existing commit
|
||||
|
||||
SYNOPSIS
|
||||
--------
|
||||
'git-cherry-pick' [--edit] [-n] [-r] <commit>
|
||||
'git-cherry-pick' [--edit] [-n] [-x] <commit>
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
@@ -24,13 +24,22 @@ OPTIONS
|
||||
With this option, `git-cherry-pick` will let you edit the commit
|
||||
message prior committing.
|
||||
|
||||
-r|--replay::
|
||||
Usually the command appends which commit was
|
||||
-x::
|
||||
Cause the command to append which commit was
|
||||
cherry-picked after the original commit message when
|
||||
making a commit. This option, '--replay', causes it to
|
||||
use the original commit message intact. This is useful
|
||||
when you are reordering the patches in your private tree
|
||||
before publishing.
|
||||
making a commit. Do not use this option if you are
|
||||
cherry-picking from your private branch because the
|
||||
information is useless to the recipient. If on the
|
||||
other hand you are cherry-picking between two publicly
|
||||
visible branches (e.g. backporting a fix to a
|
||||
maintenance branch for an older release from a
|
||||
development branch), adding this information can be
|
||||
useful.
|
||||
|
||||
-r|--replay::
|
||||
It used to be that the command defaulted to do `-x`
|
||||
described above, and `-r` was to disable it. Now the
|
||||
default is not to do `-x` so this option is a no-op.
|
||||
|
||||
-n|--no-commit::
|
||||
Usually the command automatically creates a commit with
|
||||
|
||||
@@ -12,13 +12,13 @@ case "$0" in
|
||||
*-cherry-pick* )
|
||||
edit=
|
||||
me=cherry-pick
|
||||
USAGE='[--edit] [-n] [-r] <commit-ish>' ;;
|
||||
USAGE='[--edit] [-n] [-r] [-x] <commit-ish>' ;;
|
||||
* )
|
||||
die "What are you talking about?" ;;
|
||||
esac
|
||||
. git-sh-setup
|
||||
|
||||
no_commit= replay=
|
||||
no_commit= replay=t
|
||||
while case "$#" in 0) break ;; esac
|
||||
do
|
||||
case "$1" in
|
||||
@@ -32,8 +32,10 @@ do
|
||||
--n|--no|--no-|--no-e|--no-ed|--no-edi|--no-edit)
|
||||
edit=
|
||||
;;
|
||||
-r|--r|--re|--rep|--repl|--repla|--replay)
|
||||
replay=t
|
||||
-r)
|
||||
: no-op ;;
|
||||
-x|--i-really-want-to-expose-my-private-commit-object-name)
|
||||
replay=
|
||||
;;
|
||||
-*)
|
||||
usage
|
||||
@@ -121,7 +123,7 @@ cherry-pick)
|
||||
git-cat-file commit $commit | sed -e '1,/^$/d'
|
||||
case "$replay" in
|
||||
'')
|
||||
echo "(cherry picked from $commit commit)"
|
||||
echo "(cherry picked from commit $commit)"
|
||||
test "$rev" = "$commit" ||
|
||||
echo "(original 'git cherry-pick' arguments: $@)"
|
||||
;;
|
||||
|
||||
@@ -83,7 +83,7 @@ sub cleanup_compose_files();
|
||||
my $compose_filename = ".msg.$$";
|
||||
|
||||
# Variables we fill in automatically, or via prompting:
|
||||
my (@to,@cc,@initial_cc,@bcclist,
|
||||
my (@to,@cc,@initial_cc,@bcclist,@xh,
|
||||
$initial_reply_to,$initial_subject,@files,$from,$compose,$time);
|
||||
|
||||
# Behavior modification variables
|
||||
@@ -422,6 +422,9 @@ X-Mailer: git-send-email $gitversion
|
||||
$header .= "In-Reply-To: $reply_to\n";
|
||||
$header .= "References: $references\n";
|
||||
}
|
||||
if (@xh) {
|
||||
$header .= join("\n", @xh) . "\n";
|
||||
}
|
||||
|
||||
if ($smtp_server =~ m#^/#) {
|
||||
my $pid = open my $sm, '|-';
|
||||
@@ -472,6 +475,7 @@ foreach my $t (@files) {
|
||||
|
||||
my $author_not_sender = undef;
|
||||
@cc = @initial_cc;
|
||||
@xh = ();
|
||||
my $found_mbox = 0;
|
||||
my $header_done = 0;
|
||||
$message = "";
|
||||
@@ -495,6 +499,9 @@ foreach my $t (@files) {
|
||||
$2, $_) unless $quiet;
|
||||
push @cc, $2;
|
||||
}
|
||||
elsif (/^[-A-Za-z]+:\s+\S/) {
|
||||
push @xh, $_;
|
||||
}
|
||||
|
||||
} else {
|
||||
# In the traditional
|
||||
@@ -538,7 +545,7 @@ foreach my $t (@files) {
|
||||
send_message();
|
||||
|
||||
# set up for the next message
|
||||
if ($chain_reply_to || length($reply_to) == 0) {
|
||||
if ($chain_reply_to || !defined $reply_to || length($reply_to) == 0) {
|
||||
$reply_to = $message_id;
|
||||
if (length $references > 0) {
|
||||
$references .= " $message_id";
|
||||
|
||||
Reference in New Issue
Block a user