[PATCH 3/3] rebase: finish_rebase() in noop rebase
- From
Ramkumar Ramachandra <artagnon@gmail.com>
- Date
- Jun 13, 2013, 16:06 UTC
- Message-ID
- <1371139573-28047-4-git-send-email-artagnon@gmail.com>
- In-Reply-To
- <1371139573-28047-1-git-send-email-artagnon@gmail.com>
In the following case
$ git rebase master Current branch autostash-fix is up to date.
the autostash is not applied automatically, because this codepath forgets to call finish_rebase(). Fix this. Also add a test to guard against regressions.
Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com> --- git-rebase.sh | 1 + t/t3420-rebase-autostash.sh | 11 +++++++++++ 2 files changed, 12 insertions(+)
diff --git a/git-rebase.sh b/git-rebase.sh index 154d4be..2d5c2bd 100755 --- a/git-rebase.sh +++ b/git-rebase.sh @@ -547,6 +547,7 @@ then # Lazily switch to the target branch if needed... test -z "$switch_to" || git checkout "$switch_to" -- say "$(eval_gettext "Current branch \$branch_name is up to date.")" + finish_rebase exit 0 else say "$(eval_gettext "Current branch \$branch_name is up to date, rebase forced.")" diff --git a/t/t3420-rebase-autostash.sh b/t/t3420-rebase-autostash.sh index 1bde007..90eb264 100755 --- a/t/t3420-rebase-autostash.sh +++ b/t/t3420-rebase-autostash.sh @@ -152,6 +152,17 @@ test_expect_success "rebase: fast-forward rebase" ' git checkout feature-branch ' +test_expect_success "rebase: noop rebase" ' + test_config rebase.autostash true && + git reset --hard && + git checkout -b same-feature-branch feature-branch && + test_when_finished git branch -D same-feature-branch && + echo dirty >>file1 && + git rebase feature-branch && + grep dirty file1 && + git checkout feature-branch +' + testrebase "" .git/rebase-apply testrebase " --merge" .git/rebase-merge testrebase " --interactive" .git/rebase-merge
-- 1.8.3.1.381.gf08dd97.dirty