From: Martin von Zweigbergk Date: Mon, 22 Nov 2010 20:21:01 GMT Subject: Re: [PATCH] rebase -i: remove undocumented '--verify' flag Message-ID: In-Reply-To: On Mon, 22 Nov 2010, Matthieu Moy wrote: > Thomas Rast writes: > >> Matthieu Moy wrote: >>> Martin von Zweigbergk writes: >>> >>>> Remove the undocumented and unused '--verify' flag from interactive >>>> rebase. >>> >>> I don't think this change is good. If a command has a --no-whatever >>> flag, one expects the --whatever flag to exist too, even if it's a >>> no-op. >> [...] >>> I think a better change would be to add a comment like >>> >>> --verify) >>> # no-op, exists because --no-verify exists too. >> >> Shouldn't that be >> >> OK_TO_SKIP_PRE_REBASE= >> >> instead, so that it undoes the effect of an earlier --no-verify? > > Yes, right. Useful when an alias contains --no-whatever in particular. Alright, how about something like this instead? (I hope this is the correct way of including a patch. I have only used 'git send-email before'. I noticed that Jeff seems to remove the first three lines and put a '-- 8> --' before, but others do not. What does the mysterious header mean?) ---- From 90c14fe48ab921ae60000e4f9de02f97f867e273 Mon Sep 17 00:00:00 2001 From: Martin von Zweigbergk Date: Mon, 22 Nov 2010 20:42:50 +0100 Subject: [PATCH] rebase: support --verify Interactive rebase allows the '--verify' option to be passed, but it will be ignored. Implement proper support for the option for both interactive and non-interactive rebase by making it override any previous '--no-verify'. Signed-off-by: Martin von Zweigbergk --- Documentation/git-rebase.txt | 4 ++++ git-rebase--interactive.sh | 2 ++ git-rebase.sh | 3 +++ 3 files changed, 9 insertions(+), 0 deletions(-) diff --git a/Documentation/git-rebase.txt b/Documentation/git-rebase.txt index f3753a8..1f5ce74 100644 --- a/Documentation/git-rebase.txt +++ b/Documentation/git-rebase.txt @@ -279,6 +279,10 @@ which makes little sense. --no-verify:: This option bypasses the pre-rebase hook. See also linkgit:githooks[5]. +--verify:: + Allows the pre-rebase hook to run, which is the default. This option can + be used to override --no-verify. See also linkgit:githooks[5]. + -C:: Ensure at least lines of surrounding context match before and after each change. When fewer lines of surrounding diff --git a/git-rebase--interactive.sh b/git-rebase--interactive.sh index a27952d..4eabe54 100755 --- a/git-rebase--interactive.sh +++ b/git-rebase--interactive.sh @@ -28,6 +28,7 @@ continue continue rebasing process abort abort rebasing process and restore original branch skip skip current patch and continue rebasing process no-verify override pre-rebase hook from stopping the operation +verify allow pre-rebase hook to run root rebase all reachable commmits up to the root(s) autosquash move commits that begin with squash!/fixup! under -i " @@ -727,6 +728,7 @@ do OK_TO_SKIP_PRE_REBASE=yes ;; --verify) + OK_TO_SKIP_PRE_REBASE= ;; --continue) is_standalone "$@" || usage diff --git a/git-rebase.sh b/git-rebase.sh index 3d194b1..595fca2 100755 --- a/git-rebase.sh +++ b/git-rebase.sh @@ -206,6 +206,9 @@ do --no-verify) OK_TO_SKIP_PRE_REBASE=yes ;; + --verify) + OK_TO_SKIP_PRE_REBASE= + ;; --continue) test -d "$dotest" -o -d "$GIT_DIR"/rebase-apply || die "No rebase in progress?" -- 1.7.3.2.190.gfb4ae