ref: c44adda7a7ce4f2ee4babf384dc9d321d21e34ad
parent: 8bb01b6811d2e247e1dbbae1cc9b9543b31778fc
author: kvik <[email protected]>
date: Thu Apr 9 15:46:39 EDT 2020
Implement [PATCH n/m] patch numbers in git/export
--- a/export
+++ b/export
@@ -16,6 +16,8 @@
scratch=/tmp/gitexport.$pid
mkdir -p $scratch
mkdir $scratch/a $scratch/b
+n=1
+m=$#commits
for(c in $commits){
cp=`{git/query -p $c}
pp=`{git/query -p $c'^'}
@@ -29,12 +31,27 @@
echo From $c
echo From: `{cat $cp/author}
echo Date: `{date -m `{mtime $cp/author | awk '{print $1}'}}
- echo Subject: [PATCH] `{sed 1q $cp/msg}
- echo
- sed '1d' $cp/msg
-
+ <$cp/msg awk '
+ BEGIN {RS = ""; FS = "\n"}
+ NR == 1 {
+ n = ENVIRON["n"]
+ m = ENVIRON["m"]
+ if(m > 1)
+ patch = sprintf("[PATCH %d/%d]", n, m)
+ else
+ patch = "[PATCH]"
+ printf "Subject: %s", patch
+ for(i = 1; i <= NF; i++)
+ printf " %s", $i
+ printf "\n\n"
+ next
+ }
+ {print; printf "\n"}'
ape/diff -urN a b
}
+ if(! ~ $n $m)
+ echo
+ n=`{echo $n + 1 | bc}
}
rm $scratch/a $scratch/b
rm $scratch