зеркало из https://github.com/microsoft/git.git
Merge branch 'pw/rebase-r-fixes'
Regression fix. * pw/rebase-r-fixes: rebase -i: fix rewording with --committer-date-is-author-date
This commit is contained in:
Коммит
0cb1330bc6
|
@ -997,7 +997,9 @@ static int run_git_commit(const char *defmsg,
|
|||
|
||||
cmd.git_cmd = 1;
|
||||
|
||||
if (is_rebase_i(opts) && !(!defmsg && (flags & AMEND_MSG)) &&
|
||||
if (is_rebase_i(opts) &&
|
||||
((opts->committer_date_is_author_date && !opts->ignore_date) ||
|
||||
!(!defmsg && (flags & AMEND_MSG))) &&
|
||||
read_env_script(&cmd.env_array)) {
|
||||
const char *gpg_opt = gpg_sign_opt_quoted(opts);
|
||||
|
||||
|
|
|
@ -82,6 +82,20 @@ test_expect_success '--committer-date-is-author-date works with merge backend' '
|
|||
test_ctime_is_atime -1
|
||||
'
|
||||
|
||||
test_expect_success '--committer-date-is-author-date works when rewording' '
|
||||
GIT_AUTHOR_DATE="@1234 +0300" git commit --amend --reset-author &&
|
||||
(
|
||||
set_fake_editor &&
|
||||
FAKE_COMMIT_MESSAGE=edited \
|
||||
FAKE_LINES="reword 1" \
|
||||
git rebase -i --committer-date-is-author-date HEAD^
|
||||
) &&
|
||||
test_write_lines edited "" >expect &&
|
||||
git log --format="%B" -1 >actual &&
|
||||
test_cmp expect actual &&
|
||||
test_ctime_is_atime -1
|
||||
'
|
||||
|
||||
test_expect_success '--committer-date-is-author-date works with rebase -r' '
|
||||
git checkout side &&
|
||||
GIT_AUTHOR_DATE="@1234 +0300" git merge --no-ff commit3 &&
|
||||
|
@ -155,6 +169,21 @@ test_expect_success '--reset-author-date with --committer-date-is-author-date wo
|
|||
test_atime_is_ignored -2
|
||||
'
|
||||
|
||||
test_expect_success 'reset-author-date with --committer-date-is-author-date works when rewording' '
|
||||
GIT_AUTHOR_DATE="@1234 +0300" git commit --amend --reset-author &&
|
||||
(
|
||||
set_fake_editor &&
|
||||
FAKE_COMMIT_MESSAGE=edited \
|
||||
FAKE_LINES="reword 1" \
|
||||
git rebase -i --committer-date-is-author-date \
|
||||
--reset-author-date HEAD^
|
||||
) &&
|
||||
test_write_lines edited "" >expect &&
|
||||
git log --format="%B" -1 >actual &&
|
||||
test_cmp expect actual &&
|
||||
test_atime_is_ignored -1
|
||||
'
|
||||
|
||||
test_expect_success '--reset-author-date --committer-date-is-author-date works when forking merge' '
|
||||
GIT_SEQUENCE_EDITOR="echo \"merge -C $(git rev-parse HEAD) commit3\">" \
|
||||
PATH="./test-bin:$PATH" git rebase -i --strategy=test \
|
||||
|
|
Загрузка…
Ссылка в новой задаче