mirror of
https://github.com/git/git
synced 2024-10-01 06:05:20 +00:00
branch: make the advice to force-deleting a conditional one
The error message we show when the user tries to delete a not fully merged branch describes the error and gives a hint to the user: error: the branch 'foo' is not fully merged. If you are sure you want to delete it, run 'git branch -D foo'. Let's move the hint part so that it is displayed using the advice machinery: error: the branch 'foo' is not fully merged hint: If you are sure you want to delete it, run 'git branch -D foo' hint: Disable this message with "git config advice.forceDeleteBranch false" Signed-off-by: Rubén Justo <rjusto@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
eddd134ce3
commit
bec9bb4b39
|
@ -45,6 +45,9 @@ advice.*::
|
|||
Advice shown when linkgit:git-fetch[1] takes a long time
|
||||
to calculate forced updates after ref updates, or to warn
|
||||
that the check is disabled.
|
||||
forceDeleteBranch::
|
||||
Advice shown when a user tries to delete a not fully merged
|
||||
branch without the force option set.
|
||||
ignoredHook::
|
||||
Advice shown if a hook is ignored because the hook is not
|
||||
set as executable.
|
||||
|
|
1
advice.c
1
advice.c
|
@ -47,6 +47,7 @@ static struct {
|
|||
[ADVICE_DETACHED_HEAD] = { "detachedHead", 1 },
|
||||
[ADVICE_DIVERGING] = { "diverging", 1 },
|
||||
[ADVICE_FETCH_SHOW_FORCED_UPDATES] = { "fetchShowForcedUpdates", 1 },
|
||||
[ADVICE_FORCE_DELETE_BRANCH] = { "forceDeleteBranch", 1 },
|
||||
[ADVICE_GRAFT_FILE_DEPRECATED] = { "graftFileDeprecated", 1 },
|
||||
[ADVICE_IGNORED_HOOK] = { "ignoredHook", 1 },
|
||||
[ADVICE_IMPLICIT_IDENTITY] = { "implicitIdentity", 1 },
|
||||
|
|
1
advice.h
1
advice.h
|
@ -21,6 +21,7 @@ enum advice_type {
|
|||
ADVICE_DETACHED_HEAD,
|
||||
ADVICE_DIVERGING,
|
||||
ADVICE_FETCH_SHOW_FORCED_UPDATES,
|
||||
ADVICE_FORCE_DELETE_BRANCH,
|
||||
ADVICE_GRAFT_FILE_DEPRECATED,
|
||||
ADVICE_IGNORED_HOOK,
|
||||
ADVICE_IMPLICIT_IDENTITY,
|
||||
|
|
|
@ -24,6 +24,7 @@
|
|||
#include "ref-filter.h"
|
||||
#include "worktree.h"
|
||||
#include "help.h"
|
||||
#include "advice.h"
|
||||
#include "commit-reach.h"
|
||||
|
||||
static const char * const builtin_branch_usage[] = {
|
||||
|
@ -190,9 +191,10 @@ static int check_branch_commit(const char *branchname, const char *refname,
|
|||
return -1;
|
||||
}
|
||||
if (!force && !branch_merged(kinds, branchname, rev, head_rev)) {
|
||||
error(_("the branch '%s' is not fully merged.\n"
|
||||
"If you are sure you want to delete it, "
|
||||
"run 'git branch -D %s'"), branchname, branchname);
|
||||
error(_("the branch '%s' is not fully merged"), branchname);
|
||||
advise_if_enabled(ADVICE_FORCE_DELETE_BRANCH,
|
||||
_("If you are sure you want to delete it, "
|
||||
"run 'git branch -D %s'"), branchname);
|
||||
return -1;
|
||||
}
|
||||
return 0;
|
||||
|
|
Loading…
Reference in a new issue