filter-branch: preserve and restore $GIT_AUTHOR_* and $GIT_COMMITTER_*
These are modified by set_ident() but a subsequent patch would like to operate on their original values. Signed-off-by: Ian Campbell <ijc@hellion.org.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Ian Campbell committed
Sep 21, 2017 at 08:49 UTC
7b1378bd9547f0842128101a56a64e769a440b37
1 file changed
+33
git-filter-branch.sh
+33
@@ -219,6 +219,13 @@ trap 'cd "$orig_dir"; rm -rf "$tempdir"' 0
219
ORIG_GIT_DIR="$GIT_DIR"
220
ORIG_GIT_WORK_TREE="$GIT_WORK_TREE"
221
ORIG_GIT_INDEX_FILE="$GIT_INDEX_FILE"
222
+ORIG_GIT_AUTHOR_NAME="$GIT_AUTHOR_NAME"
223
+ORIG_GIT_AUTHOR_EMAIL="$GIT_AUTHOR_EMAIL"
224
+ORIG_GIT_AUTHOR_DATE="$GIT_AUTHOR_DATE"
225
+ORIG_GIT_COMMITTER_NAME="$GIT_COMMITTER_NAME"
226
+ORIG_GIT_COMMITTER_EMAIL="$GIT_COMMITTER_EMAIL"
227
+ORIG_GIT_COMMITTER_DATE="$GIT_COMMITTER_DATE"
228
+
229
GIT_WORK_TREE=.
230
export GIT_DIR GIT_WORK_TREE
231
@@ -545,6 +552,8 @@ if [ "$filter_tag_name" ]; then
552
fi
553
554
unset GIT_DIR GIT_WORK_TREE GIT_INDEX_FILE
555
+unset GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL GIT_AUTHOR_DATE
556
+unset GIT_COMMITTER_NAME GIT_COMMITTER_EMAIL GIT_COMMITTER_DATE
557
test -z "$ORIG_GIT_DIR" || {
558
GIT_DIR="$ORIG_GIT_DIR" && export GIT_DIR
559
}
@@ -556,6 +565,30 @@ test -z "$ORIG_GIT_INDEX_FILE" || {
565
GIT_INDEX_FILE="$ORIG_GIT_INDEX_FILE" &&
566
export GIT_INDEX_FILE
567
}
568
+test -z "$ORIG_GIT_AUTHOR_NAME" || {
569
+ GIT_AUTHOR_NAME="$ORIG_GIT_AUTHOR_NAME" &&
570
+ export GIT_AUTHOR_NAME
571
+}
572
+test -z "$ORIG_GIT_AUTHOR_EMAIL" || {
573
+ GIT_AUTHOR_EMAIL="$ORIG_GIT_AUTHOR_EMAIL" &&
574
+ export GIT_AUTHOR_EMAIL
575
+}
576
+test -z "$ORIG_GIT_AUTHOR_DATE" || {
577
+ GIT_AUTHOR_DATE="$ORIG_GIT_AUTHOR_DATE" &&
578
+ export GIT_AUTHOR_DATE
579
+}
580
+test -z "$ORIG_GIT_COMMITTER_NAME" || {
581
+ GIT_COMMITTER_NAME="$ORIG_GIT_COMMITTER_NAME" &&
582
+ export GIT_COMMITTER_NAME
583
+}
584
+test -z "$ORIG_GIT_COMMITTER_EMAIL" || {
585
+ GIT_COMMITTER_EMAIL="$ORIG_GIT_COMMITTER_EMAIL" &&
586
+ export GIT_COMMITTER_EMAIL
587
+}
588
+test -z "$ORIG_GIT_COMMITTER_DATE" || {
589
+ GIT_COMMITTER_DATE="$ORIG_GIT_COMMITTER_DATE" &&
590
+ export GIT_COMMITTER_DATE
591
+}
592
593
cd "$orig_dir"
594
rm -rf "$tempdir"