bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] rebase: report invalid commit correctly


From: Erik Faye-Lund
Subject: [PATCH] rebase: report invalid commit correctly
Date: Wed, 30 May 2012 18:36:49 +0200

In 9765b6a (rebase: align variable content, 2011-02-06), the code
to error out was moved up one level. Unfortunately, one reference
to a function parameter wasn't rewritten as it should, leading to
the wrong parameter being errored on.

This error was propagated by 71786f5 (rebase: factor out reference
parsing, 2011-02-06) and merged in 78c6e0f (Merge branch
'mz/rebase', 2011-04-28).

Correct this by reporting $onto_name istead.

Reported-By: Manuela Hutter <address@hidden>
Signed-off-by: Erik Faye-Lund <address@hidden>
---

Here's a proper patch, I guess.

On Wed, May 30, 2012 at 5:37 PM, Junio C Hamano <address@hidden> wrote:
> Erik Faye-Lund <address@hidden> writes:
>
>> Indeed. This looks like the result of a bad merge-resolution, but I
>> could be mistaken.
>
> It looks like 9765b6a (rebase: align variable content, 2011-02-06)
> originally botched it, which propagated to 71786f5 (rebase: factor
> out reference parsing, 2011-02-06) in the series, and finally merged
> at 78c6e0f (Merge branch 'mz/rebase', 2011-04-28).
>

Thanks for digging, this was very helpful for the commit message.

 git-rebase.sh             | 2 +-
 t/t3406-rebase-message.sh | 5 +++++
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/git-rebase.sh b/git-rebase.sh
index 24a2840..3267c92 100755
--- a/git-rebase.sh
+++ b/git-rebase.sh
@@ -423,7 +423,7 @@ case "$onto_name" in
        ;;
 *)
        onto=$(git rev-parse --verify "${onto_name}^0") ||
-       die "Does not point to a valid commit: $1"
+       die "Does not point to a valid commit: $onto_name"
        ;;
 esac
 
diff --git a/t/t3406-rebase-message.sh b/t/t3406-rebase-message.sh
index fe5f936..6898377 100755
--- a/t/t3406-rebase-message.sh
+++ b/t/t3406-rebase-message.sh
@@ -62,4 +62,9 @@ test_expect_success 'rebase -n overrides config rebase.stat 
config' '
         ! grep "^ fileX |  *1 +$" diffstat.txt
 '
 
+test_expect_success 'rebase --onto outputs the invalid ref' '
+       test_must_fail git rebase --onto invalid-ref HEAD HEAD 2>err &&
+       grep "invalid-ref" err
+'
+
 test_done
-- 
1.7.10.msysgit.1.1147.g20e60f3




reply via email to

[Prev in Thread] Current Thread [Next in Thread]