summaryrefslogtreecommitdiff
path: root/builtin/merge.c
diff options
context:
space:
mode:
authorJay Soffian <jaysoffian@gmail.com>2011-02-19 23:12:27 -0500
committerJunio C Hamano <gitster@pobox.com>2011-02-21 22:58:02 -0800
commitd7e5c0cbfb0421d8a609f1125267dbad73069410 (patch)
tree7b19c3c4182cdbf42d260f4da024c2774718c6b0 /builtin/merge.c
parent2161da103950704a92993702696c9b573dcbccae (diff)
downloadgit-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.c7
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)