From: Felipe Contreras <felipe.contreras@gmail.com>
To: git@vger.kernel.org
Cc: Junio C Hamano <gitster@pobox.com>,
Ramkumar Ramachandra <artagnon@gmail.com>,
Jonathan Nieder <jrnieder@gmail.com>,
Martin von Zweigbergk <martin.von.zweigbergk@gmail.com>,
Felipe Contreras <felipe.contreras@gmail.com>
Subject: [PATCH v5 00/36] Massive improvents to rebase and cherry-pick
Date: Sun, 9 Jun 2013 14:24:14 -0500 [thread overview]
Message-ID: <1370805890-3453-1-git-send-email-felipe.contreras@gmail.com> (raw)
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
next reply other threads:[~2013-06-09 19:26 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-06-09 19:24 Felipe Contreras [this message]
2013-06-09 19:24 ` [PATCH v5 01/36] build: generate and clean test scripts Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 02/36] build: do not install git-remote-testgit Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 03/36] build: trivial cleanup Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 04/36] build: add builtin lib Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 05/36] log-tree: remove dependency from sequencer Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 06/36] Move sequencer to builtin Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 07/36] unpack-trees: plug a memory leak Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 08/36] read-cache: plug a few leaks Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 09/36] sequencer: remove useless indentation Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 10/36] sequencer: trivial fix Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 11/36] cherry-pick: don't barf when there's nothing to do Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 12/36] cherry-pick: add --skip-empty option Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 13/36] revert/cherry-pick: add --quiet option Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 14/36] revert/cherry-pick: add --skip option Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 15/36] builtin: add rewrite helper Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 16/36] cherry-pick: store rewritten commits Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 17/36] cherry-pick: don't store skipped commit Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 18/36] builtin: move run_rewrite_hook() to rewrite.c Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 19/36] builtin: add copy_rewrite_notes() Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 20/36] cherry-pick: copy notes and run hooks Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 21/36] cherry-pick: add --action-name option Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 22/36] cherry-pick: remember rerere-autoupdate Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 23/36] rebase: split the cherry-pick stuff Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 24/36] rebase: cherry-pick: fix mode storage Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 25/36] rebase: cherry-pick: fix sequence continuation Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 26/36] rebase: cherry-pick: fix abort of cherry mode Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 27/36] rebase: cherry-pick: fix command invocations Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 28/36] rebase: cherry-pick: fix status messages Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 29/36] rebase: cherry-pick: automatically commit stage Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 30/36] rebase: cherry-pick: set correct action-name Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 31/36] rebase: trivial cleanup Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 32/36] rebase: use 'cherrypick' mode instead of 'am' Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 33/36] rebase: cherry-pick: fix for shell prompt Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 34/36] rebase: cherry-pick: add merge options Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 35/36] rebase: remove merge mode Felipe Contreras
2013-06-09 19:24 ` [PATCH v5 36/36] rebase: cherry-pick: add copyright Felipe Contreras
2013-06-09 19:37 ` [PATCH v5 00/36] Massive improvents to rebase and cherry-pick Felipe Contreras
2013-06-10 22:55 ` Phil Hord
2013-06-10 23:43 ` Felipe Contreras
2013-06-11 1:09 ` Phil Hord
2013-06-11 3:52 ` Felipe Contreras
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1370805890-3453-1-git-send-email-felipe.contreras@gmail.com \
--to=felipe.contreras@gmail.com \
--cc=artagnon@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=jrnieder@gmail.com \
--cc=martin.von.zweigbergk@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).