The tip of the v4 of this patch can be found at [1]. It was a revamp
sent by Junio mostly touching [PATCH v2 1/3] of the series. I've updated
it a little to add in something of my taste ;-)
There's only one concern that still bothers me a little. With the current
code you would see the following,
$ git rebase origin/maint 3013dff86
Current branch 3013dff86 is up to date.
That doesn't look good, does it? How about we overcome the issue of
handling this case and the HEAD case done in 3/3 by simplifying the
message as shown in the following diff,
diff --git a/git-rebase.sh b/git-rebase.sh
index 0f379ba2b..4d5400034 100755
--- a/git-rebase.sh
+++ b/git-rebase.sh
@@ -601,11 +601,11 @@ then
test -z "$switch_to" ||
GIT_REFLOG_ACTION="$GIT_REFLOG_ACTION: checkout $switch_to" \
git checkout -q "$switch_to" --
- say "$(eval_gettext "Current branch \$branch_name is up to
date.")"
+ say "$(eval_gettext "\$branch_name is up to date.")"
finish_rebase
exit 0
else
- say "$(eval_gettext "Current branch \$branch_name is up to
date, rebase forced.")"
+ say "$(eval_gettext "\$branch_name is up to date, rebase
forced.")"
fi
fi
I guess this one is much better than 3/3 of this series as it handles
any kind of case by making no assumptions.
Thoughts ??
Note: In case you're wondering where's v3 of this series, there wasn't
a v3 series but there was a v3 PATCH of 3/3 [2].
References:
[1]: <[email protected]>
[2]: <[email protected]>
Here's the interdiff between v4 and v5,
diff --git a/git-rebase.sh b/git-rebase.sh
index f3dd86443..fd72a35c6 100755
--- a/git-rebase.sh
+++ b/git-rebase.sh
@@ -518,7 +518,7 @@ case "$onto_name" in
esac
# If the branch to rebase is given, that is the branch we will rebase
-# $branch_name -- branch being rebased, or HEAD (already detached)
+# $branch_name -- branch/commit being rebased, or HEAD (already detached)
# $orig_head -- commit object name of tip of the branch before rebasing
# $head_name -- refs/heads/<that-branch> or "detached HEAD"
switch_to=
@@ -602,7 +602,7 @@ then
GIT_REFLOG_ACTION="$GIT_REFLOG_ACTION: checkout $switch_to" \
git checkout -q "$switch_to" --
if test "$branch_name" = "HEAD" &&
- !(git symbolic-ref -q HEAD)
+ ! git symbolic-ref -q HEAD
then
say "$(eval_gettext "HEAD is up to date.")"
else
@@ -612,7 +612,7 @@ then
exit 0
else
if test "$branch_name" = "HEAD" &&
- !(git symbolic-ref -q HEAD)
+ ! git symbolic-ref -q HEAD
then
say "$(eval_gettext "HEAD is up to date, rebase
forced.")"
else
Kaartic Sivaraam (3):
rebase: consistently use branch_name variable
rebase: distinguish user input by quoting it
rebase: rebasing can also be done when HEAD is detached
git-rebase.sh | 35 +++++++++++++++++++++++++----------
1 file changed, 25 insertions(+), 10 deletions(-)
--
2.15.0.531.g2ccb3012c