Merge branch 'js/maint-am-rebase-invalid-author'
* js/maint-am-rebase-invalid-author: am: use get_author_ident_from_commit instead of mailinfo when rebasing
This commit is contained in:
commit
bcdfb20ae9
14
git-am.sh
14
git-am.sh
@ -596,7 +596,7 @@ do
|
|||||||
echo "To restore the original branch and stop patching run \"$cmdline --abort\"."
|
echo "To restore the original branch and stop patching run \"$cmdline --abort\"."
|
||||||
stop_here $this
|
stop_here $this
|
||||||
}
|
}
|
||||||
rm -f "$dotest/original-commit"
|
rm -f "$dotest/original-commit" "$dotest/author-script"
|
||||||
if test -f "$dotest/rebasing" &&
|
if test -f "$dotest/rebasing" &&
|
||||||
commit=$(sed -e 's/^From \([0-9a-f]*\) .*/\1/' \
|
commit=$(sed -e 's/^From \([0-9a-f]*\) .*/\1/' \
|
||||||
-e q "$dotest/$msgnum") &&
|
-e q "$dotest/$msgnum") &&
|
||||||
@ -605,6 +605,7 @@ do
|
|||||||
git cat-file commit "$commit" |
|
git cat-file commit "$commit" |
|
||||||
sed -e '1,/^$/d' >"$dotest/msg-clean"
|
sed -e '1,/^$/d' >"$dotest/msg-clean"
|
||||||
echo "$commit" > "$dotest/original-commit"
|
echo "$commit" > "$dotest/original-commit"
|
||||||
|
get_author_ident_from_commit "$commit" > "$dotest/author-script"
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
sed -n '/^Subject/ s/Subject: //p' "$dotest/info"
|
sed -n '/^Subject/ s/Subject: //p' "$dotest/info"
|
||||||
@ -616,9 +617,14 @@ do
|
|||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
GIT_AUTHOR_NAME="$(sed -n '/^Author/ s/Author: //p' "$dotest/info")"
|
if test -f "$dotest/author-script"
|
||||||
GIT_AUTHOR_EMAIL="$(sed -n '/^Email/ s/Email: //p' "$dotest/info")"
|
then
|
||||||
GIT_AUTHOR_DATE="$(sed -n '/^Date/ s/Date: //p' "$dotest/info")"
|
eval $(cat "$dotest/author-script")
|
||||||
|
else
|
||||||
|
GIT_AUTHOR_NAME="$(sed -n '/^Author/ s/Author: //p' "$dotest/info")"
|
||||||
|
GIT_AUTHOR_EMAIL="$(sed -n '/^Email/ s/Email: //p' "$dotest/info")"
|
||||||
|
GIT_AUTHOR_DATE="$(sed -n '/^Date/ s/Date: //p' "$dotest/info")"
|
||||||
|
fi
|
||||||
|
|
||||||
if test -z "$GIT_AUTHOR_EMAIL"
|
if test -z "$GIT_AUTHOR_EMAIL"
|
||||||
then
|
then
|
||||||
|
@ -10,8 +10,9 @@ among other things.
|
|||||||
'
|
'
|
||||||
. ./test-lib.sh
|
. ./test-lib.sh
|
||||||
|
|
||||||
GIT_AUTHOR_EMAIL=bogus_email_address
|
GIT_AUTHOR_NAME=author@name
|
||||||
export GIT_AUTHOR_EMAIL
|
GIT_AUTHOR_EMAIL=bogus@email@address
|
||||||
|
export GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL
|
||||||
|
|
||||||
test_expect_success \
|
test_expect_success \
|
||||||
'prepare repository with topic branches' \
|
'prepare repository with topic branches' \
|
||||||
@ -80,6 +81,10 @@ test_expect_success \
|
|||||||
'the rebase operation should not have destroyed author information' \
|
'the rebase operation should not have destroyed author information' \
|
||||||
'! (git log | grep "Author:" | grep "<>")'
|
'! (git log | grep "Author:" | grep "<>")'
|
||||||
|
|
||||||
|
test_expect_success \
|
||||||
|
'the rebase operation should not have destroyed author information (2)' \
|
||||||
|
"git log -1 | grep 'Author: $GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL>'"
|
||||||
|
|
||||||
test_expect_success 'HEAD was detached during rebase' '
|
test_expect_success 'HEAD was detached during rebase' '
|
||||||
test $(git rev-parse HEAD@{1}) != $(git rev-parse my-topic-branch@{1})
|
test $(git rev-parse HEAD@{1}) != $(git rev-parse my-topic-branch@{1})
|
||||||
'
|
'
|
||||||
|
Loading…
Reference in New Issue
Block a user