summaryrefslogtreecommitdiff
path: root/branch.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2011-12-14 06:53:08 (GMT)
committerJunio C Hamano <gitster@pobox.com>2011-12-14 06:53:08 (GMT)
commitb2dd02112052aff875e8dc7d12b9915c91feafe2 (patch)
tree575640076625dbc13dd950e78f8c0ab5f23e2b06 /branch.c
parenta96a89f7153150c7e59d5481dd22773173b5a877 (diff)
parent39bd6f726109942c6f77f59638f6763c9f00706c (diff)
downloadgit-b2dd02112052aff875e8dc7d12b9915c91feafe2.zip
git-b2dd02112052aff875e8dc7d12b9915c91feafe2.tar.gz
git-b2dd02112052aff875e8dc7d12b9915c91feafe2.tar.bz2
Merge branch 'jn/branch-move-to-self'
* jn/branch-move-to-self: Allow checkout -B <current-branch> to update the current branch branch: allow a no-op "branch -M <current-branch> HEAD"
Diffstat (limited to 'branch.c')
-rw-r--r--branch.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/branch.c b/branch.c
index d91a099..a715a11 100644
--- a/branch.c
+++ b/branch.c
@@ -191,7 +191,8 @@ int validate_new_branchname(const char *name, struct strbuf *ref,
void create_branch(const char *head,
const char *name, const char *start_name,
- int force, int reflog, enum branch_track track)
+ int force, int reflog, int clobber_head,
+ enum branch_track track)
{
struct ref_lock *lock = NULL;
struct commit *commit;
@@ -206,7 +207,8 @@ void create_branch(const char *head,
explicit_tracking = 1;
if (validate_new_branchname(name, &ref, force,
- track == BRANCH_TRACK_OVERRIDE)) {
+ track == BRANCH_TRACK_OVERRIDE ||
+ clobber_head)) {
if (!force)
dont_change_ref = 1;
else