Size: 1798
Comment:
|
Size: 1216
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 2: | Line 2: |
#pragma section-numbers 2 | |
Line 5: | Line 4: |
'''This extension is not distributed with Mercurial. This extension is currently under development, and not yet ready for use.''' |
|
Line 14: | Line 9: |
<<TableOfContents>> |
|
Line 23: | Line 16: |
To start renaming branches, create a file called .hgbranches in the root of the working directory, and check it in. Each line in .hgbranches consists of a space-delimited pair such as `oldBranch newBranch`. If the branch name contains spaces, it should be quoted. | To start renaming branches, create a file called `.hgbranches` in the root of the working directory, and check it in. Each line in `.hgbranches` consists of a space-delimited pair such as `oldBranch newBranch`. If the branch name contains spaces, it should be quoted. |
Line 27: | Line 20: |
== Conflicts == If conflicting changes have been made to .hgbranches on different branches, or if it contains conflicting entries, this will be resolved by the same rules that apply to .hgtags. |
|
Line 33: | Line 22: |
If the user creates a local branch which they do not intend pushing, it can be recorded in .hg/localbranches. | If the user creates a local branch which they do not intend pushing, it can be recorded in `.hg/localbranches`. Local renamings override repository renamings. |
Line 35: | Line 24: |
== Backwards Compatibility == | ''This feature has not yet been implemented.'' |
Line 37: | Line 26: |
If a branch ID is not recorded in .hgbranches or .hg/localbranches, the ID will be used as the branch name. Thus, existing branches can be used (and renamed) without any modifications. If the branch is renamed, older clients will continue to use the old name. | == Future Development == |
Line 39: | Line 28: |
== Forwards Compatibility == Future development could add other fields to .hgbranches, such as description or owner. |
Other fields could be added to `.hgbranches`, such as the branch's description or owner. |
Mutable Branches
Author: Gideon Sireling Repository: http://code.accursoft.com/mutable-branches/ Issue tracker: http://code.accursoft.com/mutable-branches/issues
Overview
The mutable-branches extension allows named branches to be renamed, without rewriting history. This is achieved by separating a branch's identity from its name.
Renaming Branches
To start renaming branches, create a file called .hgbranches in the root of the working directory, and check it in. Each line in .hgbranches consists of a space-delimited pair such as oldBranch newBranch. If the branch name contains spaces, it should be quoted.
There are no changes to Mercurial's UI, other than not scolding the user when they create a new branch.
Local Branches
If the user creates a local branch which they do not intend pushing, it can be recorded in .hg/localbranches. Local renamings override repository renamings.
This feature has not yet been implemented.
Future Development
Other fields could be added to .hgbranches, such as the branch's description or owner.