Same as before, but: diff --git a/Documentation/config.txt b/Documentation/config.txt index 7fd4035..d72d2d2 100644 --- a/Documentation/config.txt +++ b/Documentation/config.txt @@ -1679,11 +1679,10 @@ GIT_NOTES_REF) is also implicitly added to the list of refs to be displayed. notes.rewrite.<command>:: - When rewriting commits with <command> (currently `amend` or - `rebase`) and this variable is set to `true`, Git - automatically copies your notes from the original to the - rewritten commit. Defaults to `true`, but see - "notes.rewriteRef" below. + When rewriting commits with <command> (currently `amend`, `rebase`, or + `cherry-pick`) and this variable is set to `true`, Git automatically + copies your notes from the original to the rewritten commit. Defaults + to `true`, but see "notes.rewriteRef" below. notes.rewriteMode:: When copying notes during a rewrite (see the diff --git a/Documentation/githooks.txt b/Documentation/githooks.txt index d48bf4d..8cfa13b 100644 --- a/Documentation/githooks.txt +++ b/Documentation/githooks.txt @@ -352,10 +352,10 @@ post-rewrite ~~~~~~~~~~~~ This hook is invoked by commands that rewrite commits (`git commit ---amend`, 'git-rebase'; currently 'git-filter-branch' does 'not' call -it!). Its first argument denotes the command it was invoked by: -currently one of `amend` or `rebase`. Further command-dependent -arguments may be passed in the future. +--amend`, `git rebase`, `git cherry-pick`; currently `git filter-branch` does +'not' call it!). Its first argument denotes the command it was invoked by +(e.g. `rebase`). Further command-dependent arguments may be passed in the +future. The hook receives a list of the rewritten commits on stdin, in the format diff --git a/builtin/sequencer.c b/builtin/sequencer.c index ddd369f..f805883 100644 --- a/builtin/sequencer.c +++ b/builtin/sequencer.c @@ -33,8 +33,8 @@ static void finish(struct replay_opts *opts) if (!*name) return; - run_rewrite_hook(&rewritten, name); copy_rewrite_notes(&rewritten, name); + run_rewrite_hook(&rewritten, name); } static void remove_sequencer_state(void) Felipe Contreras (36): build: generate and clean test scripts build: do not install git-remote-testgit build: trivial cleanup build: add builtin lib log-tree: remove dependency from sequencer Move sequencer to builtin unpack-trees: plug a memory leak read-cache: plug a few leaks sequencer: remove useless indentation sequencer: trivial fix cherry-pick: don't barf when there's nothing to do cherry-pick: add --skip-empty option revert/cherry-pick: add --quiet option revert/cherry-pick: add --skip option builtin: add rewrite helper cherry-pick: store rewritten commits cherry-pick: don't store skipped commit builtin: move run_rewrite_hook() to rewrite.c builtin: add copy_rewrite_notes() cherry-pick: copy notes and run hooks cherry-pick: add --action-name option cherry-pick: remember rerere-autoupdate rebase: split the cherry-pick stuff rebase: cherry-pick: fix mode storage rebase: cherry-pick: fix sequence continuation rebase: cherry-pick: fix abort of cherry mode rebase: cherry-pick: fix command invocations rebase: cherry-pick: fix status messages rebase: cherry-pick: automatically commit stage rebase: cherry-pick: set correct action-name rebase: trivial cleanup rebase: use 'cherrypick' mode instead of 'am' rebase: cherry-pick: fix for shell prompt rebase: cherry-pick: add merge options rebase: remove merge mode rebase: cherry-pick: add copyright .gitignore | 1 + Documentation/config.txt | 9 +- Documentation/git-cherry-pick.txt | 10 +- Documentation/git-revert.txt | 7 +- Documentation/githooks.txt | 8 +- Documentation/sequencer.txt | 3 + Makefile | 31 ++-- builtin/commit.c | 46 +----- builtin/revert.c | 17 +++ builtin/rewrite.c | 124 ++++++++++++++++ builtin/rewrite.h | 20 +++ sequencer.c => builtin/sequencer.c | 263 +++++++++++++-------------------- sequencer.h => builtin/sequencer.h | 12 +- contrib/completion/git-prompt.sh | 4 +- git-rebase--am.sh | 12 +- git-rebase--cherrypick.sh | 72 +++++++++ git-rebase--interactive.sh | 4 +- git-rebase--merge.sh | 151 ------------------- git-rebase.sh | 16 +- log-tree.c | 161 +++++++++++++++++++- log-tree.h | 3 + read-cache.c | 4 + t/t3406-rebase-message.sh | 15 -- t/t3407-rebase-abort.sh | 2 +- t/t3420-rebase-autostash.sh | 2 +- t/t3508-cherry-pick-many-commits.sh | 13 ++ t/t3510-cherry-pick-sequence.sh | 14 +- t/t5520-pull.sh | 2 +- t/t9106-git-svn-commit-diff-clobber.sh | 2 +- t/t9903-bash-prompt.sh | 2 +- unpack-trees.c | 4 +- 31 files changed, 608 insertions(+), 426 deletions(-) create mode 100644 builtin/rewrite.c create mode 100644 builtin/rewrite.h rename sequencer.c => builtin/sequencer.c (86%) rename sequencer.h => builtin/sequencer.h (86%) create mode 100644 git-rebase--cherrypick.sh delete mode 100644 git-rebase--merge.sh -- 1.8.3.698.g079b096 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html