Show More
@@ -961,7 +961,7 b' def findcmd(cmd, table, strict=True):' | |||
|
961 | 961 | raise error.UnknownCommand(cmd, allcmds) |
|
962 | 962 | |
|
963 | 963 | |
|
964 | def changebranch(ui, repo, revs, label): | |
|
964 | def changebranch(ui, repo, revs, label, opts): | |
|
965 | 965 | """ Change the branch name of given revs to label """ |
|
966 | 966 | |
|
967 | 967 | with repo.wlock(), repo.lock(), repo.transaction(b'branches'): |
@@ -979,7 +979,11 b' def changebranch(ui, repo, revs, label):' | |||
|
979 | 979 | |
|
980 | 980 | root = repo[roots.first()] |
|
981 | 981 | rpb = {parent.branch() for parent in root.parents()} |
|
982 | if label not in rpb and label in repo.branchmap(): | |
|
982 | if ( | |
|
983 | not opts.get(b'force') | |
|
984 | and label not in rpb | |
|
985 | and label in repo.branchmap() | |
|
986 | ): | |
|
983 | 987 | raise error.Abort(_(b"a branch of the same name already exists")) |
|
984 | 988 | |
|
985 | 989 | if repo.revs(b'obsolete() and %ld', revs): |
@@ -1338,7 +1338,7 b' def branch(ui, repo, label=None, **opts)' | |||
|
1338 | 1338 | |
|
1339 | 1339 | scmutil.checknewlabel(repo, label, b'branch') |
|
1340 | 1340 | if revs: |
|
1341 | return cmdutil.changebranch(ui, repo, revs, label) | |
|
1341 | return cmdutil.changebranch(ui, repo, revs, label, opts) | |
|
1342 | 1342 | |
|
1343 | 1343 | if not opts.get(b'force') and label in repo.branchmap(): |
|
1344 | 1344 | if label not in [p.branch() for p in repo[None].parents()]: |
@@ -355,6 +355,13 b' Changing branch of a merge commit' | |||
|
355 | 355 | abort: a branch of the same name already exists |
|
356 | 356 | [255] |
|
357 | 357 | |
|
358 | $ hg branch -r . stable --force | |
|
359 | changed branch on 1 changesets | |
|
360 | $ hg branches | |
|
361 | stable 34:d1c2addda4a2 | |
|
362 | jkl 29:6bc1c6c2c9da (inactive) | |
|
363 | ghi 28:2f1019bd29d2 (inactive) | |
|
364 | ||
|
358 | 365 | Changing branch on public changeset |
|
359 | 366 | |
|
360 | 367 | $ hg phase -r . -p |
General Comments 0
You need to be logged in to leave comments.
Login now