How to use --cc-cmd in git-send-email?

6 messages, 2 authors, 2016-06-15 · open the first message on its own page

How to use --cc-cmd in git-send-email?

From: Philip Oakley <hidden>
Date: 2016-06-15 23:05:49

I've been using git-send-email with repeated individual --cc="email 
address" parameters on the command line.

I tried putting all the addresses, one per line, into a file 'cc-cmd', 
so I could use if for the --cc-cmd option.

I then tried to use --cc-cmd='cat cc-cmd' to do the send-email (as 
a --dry-run). This produced, as part of the output, a list of the output 
of the cc-cmd, which showed not only the file contents, but this was 
then followed by the full patch, as if it was part of the list of email 
addresses.

Finally, at the end of the inclusion of the patch, I got

(cc-cmd) Adding cc: -- from: 'cat cc-cmd'
(cc-cmd) Adding cc: 2.4.2.windows.1.5.gd32afb6 from: 'cat cc-cmd'
(cc-cmd) Adding cc:  from: 'cat cc-cmd'
error: unable to extract a valid address from:
What to do with this address? ([q]uit|[d]rop|[e]dit):

Could this have been caused by an extra (blank) line at the end of the 
cc-cmd file?

Also, does anyone have an example of a working --cc-cmd option?

(this is on g4w: git version 2.3.1)

Philip 

Re: How to use --cc-cmd in git-send-email?

From: Eric Sunshine <hidden>
Date: 2016-06-15 23:05:49

On Sun, Jul 19, 2015 at 6:02 PM, Philip Oakley [off-list ref] wrote:
I've been using git-send-email with repeated individual --cc="email address"
parameters on the command line.

I tried putting all the addresses, one per line, into a file 'cc-cmd', so I
could use if for the --cc-cmd option.

I then tried to use --cc-cmd='cat cc-cmd' to do the send-email (as a
--dry-run). This produced, as part of the output, a list of the output of
the cc-cmd, which showed not only the file contents, but this was then
followed by the full patch, as if it was part of the list of email
addresses.
git-send-email invokes the cc-cmd like this:

    $cc-cmd $patchfilename

so, when you used 'cat cc-cmd' as the value of --cc-cmd, your invocation became:

    cat cc-cmd $patchfilename

and since 'cat' copies the concatenation of its input files to its
output, that explains why you first saw the names from your 'cc-cmd'
file followed by the content of the patch file.

A quick-and-dirty work-around is to use '#' to effectively comment out
the patch file name:

    --cc-cmd='cat cc-cmd #'

which works, but is very, very ugly.
Could this have been caused by an extra (blank) line at the end of the
cc-cmd file?
Nope.
Also, does anyone have an example of a working --cc-cmd option?
A very simple working solution is to make your 'cc-cmd' file executable:

    #!/bin/sh
    echo <<\EOF
    person1@example.com
    person2@example.com
    EOF

Re: How to use --cc-cmd in git-send-email?

From: Philip Oakley <hidden>
Date: 2016-06-15 23:05:49

From: "Eric Sunshine" <redacted>
On Sun, Jul 19, 2015 at 6:02 PM, Philip Oakley [off-list ref] 
wrote:
quoted
I've been using git-send-email with repeated individual --cc="email 
address"
parameters on the command line.

I tried putting all the addresses, one per line, into a file 
'cc-cmd', so I
could use if for the --cc-cmd option.

I then tried to use --cc-cmd='cat cc-cmd' to do the send-email (as a
--dry-run). This produced, as part of the output, a list of the 
output of
the cc-cmd, which showed not only the file contents, but this was 
then
followed by the full patch, as if it was part of the list of email
addresses.
git-send-email invokes the cc-cmd like this:

   $cc-cmd $patchfilename

so, when you used 'cat cc-cmd' as the value of --cc-cmd, your 
invocation became:

   cat cc-cmd $patchfilename

and since 'cat' copies the concatenation of its input files to its
output, that explains why you first saw the names from your 'cc-cmd'
file followed by the content of the patch file.
Many thanks, that seems to explain everything!

I'd tried to understand the code but I missed the nuances with my 
limited experience of perl coding.
A quick-and-dirty work-around is to use '#' to effectively comment out
the patch file name:

   --cc-cmd='cat cc-cmd #'

which works, but is very, very ugly.
But nicely quick and dirty ;-)
quoted
Could this have been caused by an extra (blank) line at the end of 
the
cc-cmd file?
Nope.
quoted
Also, does anyone have an example of a working --cc-cmd option?
A very simple working solution is to make your 'cc-cmd' file 
executable:

   #!/bin/sh
   echo <<\EOF
   person1@example.com
   person2@example.com
   EOF
I may try and do a small doc patch for the git-send-email.txt man page 
(I have a few doc fixes backing up waiting to be done ;-)

--
Philip 

Re: How to use --cc-cmd in git-send-email?

From: Eric Sunshine <hidden>
Date: 2016-06-15 23:05:49

On Mon, Jul 20, 2015 at 2:01 AM, Philip Oakley [off-list ref] wrote:
From: "Eric Sunshine" <redacted>
quoted
git-send-email invokes the cc-cmd like this:

   $cc-cmd $patchfilename

so, when you used 'cat cc-cmd' as the value of --cc-cmd, your invocation
became:

   cat cc-cmd $patchfilename

and since 'cat' copies the concatenation of its input files to its
output, that explains why you first saw the names from your 'cc-cmd'
file followed by the content of the patch file.
Many thanks, that seems to explain everything!

I may try and do a small doc patch for the git-send-email.txt man page (I
have a few doc fixes backing up waiting to be done ;-)
That would be welcome. I don't think it's mentioned at all in
git-send-email.txt that the --to-cmd/--cc-cmd commands are handed the
patch pathname as an argument, so that's certainly something worth
documenting.

Re: How to use --cc-cmd in git-send-email?

From: Philip Oakley <hidden>
Date: 2016-06-15 23:05:49

From: "Eric Sunshine" <redacted>
On Mon, Jul 20, 2015 at 2:01 AM, Philip Oakley [off-list ref] 
wrote:
quoted
From: "Eric Sunshine" <redacted>
quoted
git-send-email invokes the cc-cmd like this:

   $cc-cmd $patchfilename

so, when you used 'cat cc-cmd' as the value of --cc-cmd, your 
invocation
became:

   cat cc-cmd $patchfilename

and since 'cat' copies the concatenation of its input files to its
output, that explains why you first saw the names from your 'cc-cmd'
file followed by the content of the patch file.
Many thanks, that seems to explain everything!

I may try and do a small doc patch for the git-send-email.txt man 
page (I
have a few doc fixes backing up waiting to be done ;-)
That would be welcome. I don't think it's mentioned at all in
git-send-email.txt that the --to-cmd/--cc-cmd commands are handed the
patch pathname as an argument, so that's certainly something worth
documenting.
--
The other issue I noted was wondering what "auto-cc" is?

It's only mentioned the once in:
    --suppress-cc=<category>

Specify an additional category of recipients to suppress the auto-cc of:

Is it a sort of double negative? Certainly I had no idea what an auto-cc 
was ;-)



Philip

Re: How to use --cc-cmd in git-send-email?

From: Eric Sunshine <hidden>
Date: 2016-06-15 23:05:50

On Mon, Jul 20, 2015 at 10:20 AM, Philip Oakley [off-list ref] wrote:
From: "Eric Sunshine" <redacted>
quoted
On Mon, Jul 20, 2015 at 2:01 AM, Philip Oakley [off-list ref]
wrote:
quoted
I may try and do a small doc patch for the git-send-email.txt man page (I
have a few doc fixes backing up waiting to be done ;-)
That would be welcome. I don't think it's mentioned at all in
git-send-email.txt that the --to-cmd/--cc-cmd commands are handed the
patch pathname as an argument, so that's certainly something worth
documenting.
The other issue I noted was wondering what "auto-cc" is?

It's only mentioned the once in:
   --suppress-cc=<category>

Specify an additional category of recipients to suppress the auto-cc of:

Is it a sort of double negative? Certainly I had no idea what an auto-cc was
;-)
I presume that "auto-cc" refers to git-send-email's behavior of
figuring out whom to cc: automatically (by gleaning email addresses
from various sources, such as the patch itself, cc-cmd, etc.). Even
just saying "...suppress the automatic cc:'ing..." would be an
improvement, though it may deserve its own little paragraph explaining
that automatic cc:'ing is occurring and from where the email addresses
are gleaned.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help