mirror of
https://github.com/git/git.git
synced 2024-11-24 18:33:43 +08:00
branch: factor out check_branch_commit()
Move the code to perform checks on the tip commit of a branch to its own function. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
87a5461fa7
commit
f5d0e162c4
@ -154,10 +154,28 @@ static int branch_merged(int kind, const char *name,
|
||||
return merged;
|
||||
}
|
||||
|
||||
static int check_branch_commit(const char *branchname, const char *refname,
|
||||
unsigned char *sha1, struct commit *head_rev,
|
||||
int kinds, int force)
|
||||
{
|
||||
struct commit *rev = lookup_commit_reference(sha1);
|
||||
if (!rev) {
|
||||
error(_("Couldn't look up commit object for '%s'"), 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);
|
||||
return -1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int delete_branches(int argc, const char **argv, int force, int kinds,
|
||||
int quiet)
|
||||
{
|
||||
struct commit *rev, *head_rev = NULL;
|
||||
struct commit *head_rev = NULL;
|
||||
unsigned char sha1[20];
|
||||
char *name = NULL;
|
||||
const char *fmt;
|
||||
@ -206,17 +224,8 @@ static int delete_branches(int argc, const char **argv, int force, int kinds,
|
||||
continue;
|
||||
}
|
||||
|
||||
rev = lookup_commit_reference(sha1);
|
||||
if (!rev) {
|
||||
error(_("Couldn't look up commit object for '%s'"), name);
|
||||
ret = 1;
|
||||
continue;
|
||||
}
|
||||
|
||||
if (!force && !branch_merged(kinds, bname.buf, 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'."), bname.buf, bname.buf);
|
||||
if (check_branch_commit(bname.buf, name, sha1, head_rev, kinds,
|
||||
force)) {
|
||||
ret = 1;
|
||||
continue;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user