X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=builtin%2Fbranch.c;h=cb17bc367571a88b6e6bcac5020c1746c4385480;hb=8c80ff362f1f4e586a37fba8e6dc83eee67aa2b5;hp=7095718c13b5c4f39186548f5ed12198a3b9e609;hpb=0e1cfc52de002e2d9b0e6562e8672fee3bf45a67;p=git.git diff --git a/builtin/branch.c b/builtin/branch.c index 7095718c1..cb17bc367 100644 --- a/builtin/branch.c +++ b/builtin/branch.c @@ -768,6 +768,8 @@ int cmd_branch(int argc, const char **argv, const char *prefix) with_commit, argv); else if (edit_description) { const char *branch_name; + struct strbuf branch_ref = STRBUF_INIT; + if (detached) die("Cannot give description to detached HEAD"); if (!argc) @@ -776,6 +778,19 @@ int cmd_branch(int argc, const char **argv, const char *prefix) branch_name = argv[0]; else usage_with_options(builtin_branch_usage, options); + + strbuf_addf(&branch_ref, "refs/heads/%s", branch_name); + if (!ref_exists(branch_ref.buf)) { + strbuf_release(&branch_ref); + + if (!argc) + return error("No commit on branch '%s' yet.", + branch_name); + else + return error("No such branch '%s'.", branch_name); + } + strbuf_release(&branch_ref); + if (edit_branch_description(branch_name)) return 1; } else if (rename) {