diff options
author | Junio C Hamano <gitster@pobox.com> | 2016-04-18 10:48:11 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2016-04-18 10:48:11 -0700 |
commit | 741a6942eb241dfc1317b7692381fc41dbb92501 (patch) | |
tree | d716da40ac03d8fbe811aeebacd9168d247ba186 /builtin/branch.c | |
parent | Merge branch 'maint' (diff) | |
parent | set_worktree_head_symref(): fix error message (diff) | |
download | tgif-741a6942eb241dfc1317b7692381fc41dbb92501.tar.xz |
Merge branch 'ky/branch-m-worktree'
When "git worktree" feature is in use, "git branch -m" renamed a
branch that is checked out in another worktree without adjusting
the HEAD symbolic ref for the worktree.
* ky/branch-m-worktree:
set_worktree_head_symref(): fix error message
branch -m: update all per-worktree HEADs
refs: add a new function set_worktree_head_symref
Diffstat (limited to 'builtin/branch.c')
-rw-r--r-- | builtin/branch.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/builtin/branch.c b/builtin/branch.c index 8885d9f8e2..de6df09ed3 100644 --- a/builtin/branch.c +++ b/builtin/branch.c @@ -558,8 +558,7 @@ static void rename_branch(const char *oldname, const char *newname, int force) if (recovery) warning(_("Renamed a misnamed branch '%s' away"), oldref.buf + 11); - /* no need to pass logmsg here as HEAD didn't really move */ - if (!strcmp(oldname, head) && create_symref("HEAD", newref.buf, NULL)) + if (replace_each_worktree_head_symref(oldref.buf, newref.buf)) die(_("Branch renamed to %s, but HEAD is not updated!"), newname); strbuf_addf(&oldsection, "branch.%s", oldref.buf + 11); |