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>

Junio C Hamano committed May 9, 2013 at 13:27 UTC 7c0b0d8deae040969d78eb141d899e225f1577e6
1 file changed +3 -3
sequencer.c
+3 -3
@@ -1077,10 +1077,10 @@ int sequencer_pick_revisions(struct replay_opts *opts)
1077 continue;
1078
1079 if (!get_sha1(name, sha1)) {
1080 - enum object_type type = sha1_object_info(sha1, NULL);
1081 -
1082 - if (type > 0 && type != OBJ_COMMIT)
1080 + if (!lookup_commit_reference_gently(sha1, 1)) {
1081 + enum object_type type = sha1_object_info(sha1, NULL);
1082 die(_("%s: can't cherry-pick a %s"), name, typename(type));
1083 + }
1084 } else
1085 die(_("%s: bad revision"), name);
1086 }