diff options
author | Jay Soffian <jaysoffian@gmail.com> | 2011-02-19 23:12:27 -0500 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2011-02-21 22:58:02 -0800 |
commit | d7e5c0cbfb0421d8a609f1125267dbad73069410 (patch) | |
tree | 7b19c3c4182cdbf42d260f4da024c2774718c6b0 /builtin/merge.c | |
parent | 2161da103950704a92993702696c9b573dcbccae (diff) | |
download | git-d7e5c0cbfb0421d8a609f1125267dbad73069410.tar.gz |
Introduce CHERRY_PICK_HEAD
When a cherry-pick conflicts git advises:
$ git commit -c <original commit id>
to preserve the original commit message and authorship. Instead, let's
record the original commit id in CHERRY_PICK_HEAD and advise:
$ git commit -c CHERRY_PICK_HEAD
A later patch teaches git to handle the '-c CHERRY_PICK_HEAD' part.
Note that we record CHERRY_PICK_HEAD even in the case where there
are no conflicts so that we may use it to communicate authorship to
commit; this will then allow us to remove set_author_ident_env from
revert.c. However, we do not record CHERRY_PICK_HEAD when --no-commit
is used, as presumably the user intends to further edit the commit
and possibly even cherry-pick additional commits on top.
Tests and documentation contributed by Jonathan Nieder.
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Jay Soffian <jaysoffian@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin/merge.c')
-rw-r--r-- | builtin/merge.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/builtin/merge.c b/builtin/merge.c index 42fff387e6..5ba2efc214 100644 --- a/builtin/merge.c +++ b/builtin/merge.c @@ -969,6 +969,13 @@ int cmd_merge(int argc, const char **argv, const char *prefix) else die("You have not concluded your merge (MERGE_HEAD exists)."); } + if (file_exists(git_path("CHERRY_PICK_HEAD"))) { + if (advice_resolve_conflict) + die("You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).\n" + "Please, commit your changes before you can merge."); + else + die("You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists)."); + } resolve_undo_clear(); if (verbosity < 0) |