File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 593593 echo " Patch is empty. Was it split wrong?"
594594 stop_here $this
595595 }
596- rm -f " $dotest /original-commit"
596+ rm -f " $dotest /original-commit" " $dotest /author-script "
597597 if test -f " $dotest /rebasing" &&
598598 commit=$( sed -e ' s/^From \([0-9a-f]*\) .*/\1/' \
599599 -e q " $dotest /$msgnum " ) &&
602602 git cat-file commit " $commit " |
603603 sed -e ' 1,/^$/d' > " $dotest /msg-clean"
604604 echo " $commit " > " $dotest /original-commit"
605+ get_author_ident_from_commit " $commit " > " $dotest /author-script"
605606 else
606607 {
607608 sed -n ' /^Subject/ s/Subject: //p' " $dotest /info"
613614 ;;
614615 esac
615616
616- GIT_AUTHOR_NAME=" $( sed -n ' /^Author/ s/Author: //p' " $dotest /info" ) "
617- GIT_AUTHOR_EMAIL=" $( sed -n ' /^Email/ s/Email: //p' " $dotest /info" ) "
618- GIT_AUTHOR_DATE=" $( sed -n ' /^Date/ s/Date: //p' " $dotest /info" ) "
617+ if test -f " $dotest /author-script"
618+ then
619+ eval $( cat " $dotest /author-script" )
620+ else
621+ GIT_AUTHOR_NAME=" $( sed -n ' /^Author/ s/Author: //p' " $dotest /info" ) "
622+ GIT_AUTHOR_EMAIL=" $( sed -n ' /^Email/ s/Email: //p' " $dotest /info" ) "
623+ GIT_AUTHOR_DATE=" $( sed -n ' /^Date/ s/Date: //p' " $dotest /info" ) "
624+ fi
619625
620626 if test -z " $GIT_AUTHOR_EMAIL "
621627 then
Original file line number Diff line number Diff line change @@ -10,8 +10,9 @@ among other things.
1010'
1111. ./test-lib.sh
1212
13- GIT_AUTHOR_EMAIL=bogus_email_address
14- export GIT_AUTHOR_EMAIL
13+ GIT_AUTHOR_NAME=author@name
14+ GIT_AUTHOR_EMAIL=bogus@email@address
15+ export GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL
1516
1617test_expect_success \
1718 ' prepare repository with topic branches' \
@@ -80,6 +81,10 @@ test_expect_success \
8081 ' the rebase operation should not have destroyed author information' \
8182 ' ! (git log | grep "Author:" | grep "<>")'
8283
84+ test_expect_success \
85+ ' the rebase operation should not have destroyed author information (2)' \
86+ " git log -1 | grep 'Author: $GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL >'"
87+
8388test_expect_success ' HEAD was detached during rebase' '
8489 test $(git rev-parse HEAD@{1}) != $(git rev-parse my-topic-branch@{1})
8590'
You can’t perform that action at this time.
0 commit comments