Forráskód Böngészése

send-pull-request: send all patches as the local user

When using sendmail to send patches, patches would appear to be from the
original author as git adds a From: header in the generated patches.  This patch
changes this behavior to match that of git-send-email, where the email From:
header is that of the current sender (according to sendmail) and a "From:
Original Author <email>" line is inserted into the body of the message.

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Darren Hart 13 éve
szülő
commit
94629f2521
1 módosított fájl, 6 hozzáadás és 1 törlés
  1. 6 1
      scripts/send-pull-request

+ 6 - 1
scripts/send-pull-request

@@ -144,13 +144,18 @@ if [ "$cont" == "y" ] || [ "$cont" == "Y" ]; then
                 # appending them to the sendmail command as -- $TO $CC has
                 # proven to be an exercise in futility.
                 #
+                # Clear the From header, leaving it up to sendmail to insert an
+                # appropriate one. Insert the original sender (per git) into the
+                # body of the message.
+                #
                 # Use tail to remove the email envelope from git or formail as
                 # msmtp (sendmail) would choke on them.
                 #
                 # Modify the patch date for sequential delivery, but retain the
                 # original date as "Old-Date".
                 DATE=$(date +"%a, %d %b %Y %k:%M:%S %z")
-                cat $PATCH | formail -I "To: $TO" -I "CC: $CC" -i "Date: $DATE" | tail -n +2 | sendmail -t
+                GIT_FROM=$(cat $PATCH | formail -X "From:")
+                cat $PATCH | formail -I "To: $TO" -I "CC: $CC" -I "From:" -i "Date: $DATE" | sed "0,/^$/s/^$/\n$GIT_FROM\n/" | tail -n +2 | sendmail -t
                 if [ $? -eq 1 ]; then
                     ERROR=1
                 fi