Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.kernel.org/pub/scm/git/git.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2013-05-10 00:27:49 +0400
committerJunio C Hamano <gitster@pobox.com>2013-05-10 00:29:53 +0400
commit7c0b0d8deae040969d78eb141d899e225f1577e6 (patch)
tree748a3e43c12c51eb75ec676f00d50ccf8f25ff81
parent21246dbb9e0af278bc671e32e45a6cae4ad38b6f (diff)
cherry-pick: picking a tag that resolves to a commit is OK
Earlier, 21246dbb9e0a (cherry-pick: make sure all input objects are commits, 2013-04-11) tried to catch an unlikely "git cherry-pick $blob" as an error, but broke a more important use case to cherry-pick a tag that points at a commit. Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--sequencer.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sequencer.c b/sequencer.c
index 61fdb6805c..f2c9d98f8f 100644
--- a/sequencer.c
+++ b/sequencer.c
@@ -1077,10 +1077,10 @@ int sequencer_pick_revisions(struct replay_opts *opts)
continue;
if (!get_sha1(name, sha1)) {
- enum object_type type = sha1_object_info(sha1, NULL);
-
- if (type > 0 && type != OBJ_COMMIT)
+ if (!lookup_commit_reference_gently(sha1, 1)) {
+ enum object_type type = sha1_object_info(sha1, NULL);
die(_("%s: can't cherry-pick a %s"), name, typename(type));
+ }
} else
die(_("%s: bad revision"), name);
}