Commit Diff


commit - 0141ae45ce4657625b86e5c2619ec279d6245d3e
commit + f7a23baba805288dfe0cbcd8184a71f947591683
blob - 953e8860bc82856d20942174a0ecb292578e95dc
blob + 921520bfa7c90817c445a61555cb0a657a0dd54d
--- got/got.c
+++ got/got.c
@@ -7383,22 +7383,28 @@ cmd_tag(int argc, char *argv[])
 		if (commit_id_arg != NULL)
 			errx(1,
 			    "-c option can only be used when creating a tag");
-		if (tagmsg) {
-			if (do_list)
-				option_conflict('l', 'm');
-			else
-				option_conflict('V', 'm');
-		}
-		if (signer_id) {
-			if (do_list)
-				option_conflict('l', 's');
-			else
-				option_conflict('V', 's');
-		}
+		if (tagmsg)
+			option_conflict('l', 'm');
+		if (signer_id)
+			option_conflict('l', 's');
+		if (verify_tags)
+			option_conflict('l', 'V');
 		if (argc > 1)
 			usage_tag();
 	} else if (argc != 1)
 		usage_tag();
+
+	if (verify_tags) {
+		if (commit_id_arg != NULL)
+			errx(1,
+			    "-c option can only be used when creating a tag");
+		if (tagmsg)
+			option_conflict('V', 'm');
+		if (signer_id)
+			option_conflict('V', 's');
+		if (do_list)
+			option_conflict('V', 'l');
+	}
 
 	if (argc == 1)
 		tag_name = argv[0];