![]() |
![]()
| ![]() |
![]()
NAMEbrz - Breezy next-generation distributed version control SYNOPSISbrz command [ command_options ]
DESCRIPTIONBreezy (or brz) is a distributed version control system that is powerful, friendly, and scalable. Breezy is a fork of the Bazaar version control system. Breezy keeps track of changes to software source code (or similar information); lets you explore who changed it, when, and why; merges concurrent changes; and helps people work together in a team. COMMAND OVERVIEW
COMMAND REFERENCEbrz --helpAlias for "help", see "brz help". brz -?Alias for "help", see "brz help". brz -hAlias for "help", see "brz help". brz ?Alias for "help", see "brz help". brz add [FILE...]Options:
See also: ignore, remove Add specified files or directories. In non-recursive mode, all the named items are added, regardless of whether they were previously ignored. A warning is given if any of the named files are already versioned. In recursive mode (the default), files are treated the same way but the behaviour for directories is different. Directories that are already versioned do not give a warning. All directories, whether already versioned or not, are searched for files or subdirectories that are neither versioned or ignored, and these are added. This search proceeds recursively into versioned directories. If no names are given '.' is assumed. A warning will be printed when nested trees are encountered, unless they are explicitly ignored. Therefore simply saying 'brz add' will version all files that are currently unknown. Adding a file whose parent directory is not versioned will implicitly add the parent, and so on up to the root. This means you should never need to explicitly add a directory, they'll just get added when you add a file in the directory. --dry-run will show which files would be added, but not actually add them. --file-ids-from will try to use the file ids from the supplied path. It looks up ids trying to find a matching parent directory with the same filename, and then by pure path. This option is rarely needed but can be useful when adding the same logical file into two branches that will be merged later (without showing the two different adds as a conflict). It is also useful when merging another project into a subdirectory of this one. Any files matching patterns in the ignore list will not be added unless they are explicitly mentioned. In recursive mode, files larger than the configuration option add.maximum_file_size will be skipped. Named items are never skipped due to file size. brz alias [NAME]Options:
Set/unset and display aliases. Examples:
brz annAlias for "annotate", see "brz annotate". brz annotate FILENAMEOptions:
Aliases: ann, blame, praise Show the origin of each line in a file. This prints out the given file with an annotation on the left side indicating which revision, author and date introduced the change. If the origin is the same for a run of consecutive lines, it is shown only at the top, unless the --all option is given. brz bind [LOCATION]Options:
See also: checkouts, unbind Convert the current branch into a checkout of the supplied branch. If no branch is supplied, rebind to the last bound location. Once converted into a checkout, commits must succeed on the master branch before they will be applied to the local branch. Bound branches use the nickname of its master branch unless it is set locally, in which case binding will update the local nickname to be that of the master. brz bisect SUBCOMMAND [ARGS...]Options:
Find an interesting commit using a binary search. Bisecting, in a nutshell, is a way to find the commit at which some testable change was made, such as the introduction of a bug or feature. By identifying a version which did not have the interesting change and a later version which did, a developer can test for the presence of the change at various points in the history, eventually ending up at the precise commit when the change was first introduced. This command uses subcommands to implement the search, each of which changes the state of the bisection. The subcommands are: brz bisect start
brz bisect yes [-r rev]
brz bisect no [-r rev]
brz bisect move -r rev
brz bisect reset
brz bisect log [-o file]
brz bisect replay <logfile>
brz bisect run <script>
brz blameAlias for "annotate", see "brz annotate". brz branch FROM_LOCATION [TO_LOCATION]Options:
See also: checkout Create a new branch that is a copy of an existing branch. If the TO_LOCATION is omitted, the last component of the FROM_LOCATION will be used. In other words, "branch ../foo/bar" will attempt to create ./bar. If the FROM_LOCATION has no / or path separator embedded, the TO_LOCATION is derived from the FROM_LOCATION by stripping a leading scheme or drive identifier, if any. For example, "branch lp:foo-bar" will attempt to create ./foo-bar. To retrieve the branch as of a particular revision, supply the --revision parameter, as in "branch foo/bar -r 5". brz branches [LOCATION]Options:
List the branches available at the current location. This command will print the names of all the branches at the current location. brz break-lock [LOCATION]Options:
Break a dead lock. This command breaks a lock on a repository, branch, working directory or config file. CAUTION: Locks should only be broken when you are sure that the process holding the lock has been stopped. You can get information on what locks are open via the 'brz info [location]' command. Examples:
brz cat FILENAMEOptions:
See also: ls Write the contents of a file as of a given revision to standard output. If no revision is nominated, the last revision is used. Note: Take care to redirect standard output when using this command on a binary file. brz check [PATH]Options:
See also: reconcile Validate working tree structure, branch consistency and repository history. This command checks various invariants about branch and repository storage to detect data corruption or brz bugs. The working tree and branch checks will only give output if a problem is detected. The output fields of the repository check are: revisions
versionedfiles
unreferenced ancestors
unique file texts
repeated file texts
If no restrictions are specified, all data that is found at the given location will be checked. Examples:
brz checkinAlias for "commit", see "brz commit". brz checkout [BRANCH_LOCATION] [TO_LOCATION]Options:
Alias: co See also: branch, checkouts, remove-tree, working-trees Create a new checkout of an existing branch. If BRANCH_LOCATION is omitted, checkout will reconstitute a working tree for the branch found in '.'. This is useful if you have removed the working tree or if it was never created - i.e. if you pushed the branch to its current location using SFTP. If the TO_LOCATION is omitted, the last component of the BRANCH_LOCATION will be used. In other words, "checkout ../foo/bar" will attempt to create./bar. If the BRANCH_LOCATION has no / or path separator embedded, the TO_LOCATION is derived from the BRANCH_LOCATION by stripping a leading scheme or drive identifier, if any. For example, "checkout lp:foo-bar" will attempt to create ./foo-bar. To retrieve the branch as of a particular revision, supply the --revision parameter, as in "checkout foo/bar -r 5". Note that this will be immediately out of date [so you cannot commit] but it may be useful (i.e. to examine old code.) brz ciAlias for "commit", see "brz commit". brz clean-treeOptions:
Remove unwanted files from working tree. By default, only unknown files, not ignored files, are deleted. Versioned files are never deleted. Another class is 'detritus', which includes files emitted by brz during normal operations and selftests. (The value of these files decreases with time.) If no options are specified, unknown files are deleted. Otherwise, option flags are respected, and may be combined. To check what clean-tree will do, use --dry-run. brz clone FROM_LOCATION [TO_LOCATION]Options:
Clone a control directory. brz coAlias for "checkout", see "brz checkout". brz commit [SELECTED...]Options:
Aliases: ci, checkin See also: add, bugs, hooks, uncommit Commit changes into a new revision. An explanatory message needs to be given for each commit. This is often done by using the --message option (getting the message from the command line) or by using the --file option (getting the message from a file). If neither of these options is given, an editor is opened for the user to enter the message. To see the changed files in the boilerplate text loaded into the editor, use the --show-diff option. By default, the entire tree is committed and the person doing the commit is assumed to be the author. These defaults can be overridden as explained below. Selective commits:
Custom authors:
Checks:
Things to note:
brz config [NAME]Options:
See also: configuration Display, set or remove a configuration option. Display the active value for option NAME. If --all is specified, NAME is interpreted as a regular expression and all matching options are displayed mentioning their scope and without resolving option references in the value). The active value that bzr will take into account is the first one displayed for each option. If NAME is not given, --all .* is implied (all options are displayed for the current scope). Setting a value is achieved by using NAME=value without spaces. The value is set in the most relevant scope and can be checked by displaying the option again. Removing a value is achieved by using --remove NAME. brz conflictsOptions:
See also: conflict-types, resolve List files with conflicts. Merge will do its best to combine the changes in two branches, but there are some kinds of problems only a human can fix. When it encounters those, it will mark a conflict. A conflict means that you need to fix something, before you can commit. Conflicts normally are listed as short, human-readable messages. If --text is supplied, the pathnames of files with text conflicts are listed, instead. (This is useful for editing all files with text conflicts.) Use brz resolve when you have fixed a problem. brz copyAlias for "cp", see "brz cp". brz cp [NAMES...]Options:
Alias: copy Copy a file. Usage:
If the last argument is a versioned directory, all the other names are copied into it. Otherwise, there must be exactly two arguments and the file is copied to a new name. Files cannot be copied between branches. Only files can be copied at the moment. brz delAlias for "remove", see "brz remove". brz deletedOptions:
See also: ls, status List files deleted in the working tree. brz diAlias for "diff", see "brz diff". brz difAlias for "diff", see "brz diff". brz diff [FILE...]Options:
Aliases: di, dif See also: status Show differences in the working tree, between revisions or branches. If no arguments are given, all changes for the current tree are listed. If files are given, only the changes in those files are listed. Remote and multiple branches can be compared by using the --old and --new options. If not provided, the default for both is derived from the first argument, if any, or the current tree if no arguments are given. "brz diff -p1" is equivalent to "brz diff --prefix old/:new/", and produces patches suitable for "patch -p1". Note that when using the -r argument with a range of revisions, the differences are computed between the two specified revisions. That is, the command does not show the changes introduced by the first revision in the range. This differs from the interpretation of revision ranges used by "brz log" which includes the first revision in the range. Exit values:
Examples:
brz export DEST [BRANCH_OR_SUBDIR]Options:
Export current or past revision to a destination directory or archive. If no revision is specified this exports the last committed revision. Format may be an "exporter" name, such as tar, tgz, tbz2. If none is given, try to find the format with the extension. If no extension is found exports to a directory (equivalent to --format=dir). If root is supplied, it will be used as the root directory inside container formats (tar, zip, etc). If it is not supplied it will default to the exported filename. The root option has no effect for 'dir' format. If branch is omitted then the branch containing the current working directory will be used. Note: Export of tree with non-ASCII filenames to zip is not supported.
brz grep PATTERN [PATH...]Options:
Print lines matching PATTERN for specified files and revisions. This command searches the specified files and revisions for a given pattern. The pattern is specified as a Python regular expressions[1]. If the file name is not specified, the revisions starting with the current directory are searched recursively. If the revision number is not specified, the working copy is searched. To search the last committed revision, use the '-r -1' or '-r last:1' option. Unversioned files are not searched unless explicitly specified on the command line. Unversioned directores are not searched. When searching a pattern, the output is shown in the 'filepath:string' format. If a revision is explicitly searched, the output is shown as 'filepath~N:string', where N is the revision number. --include and --exclude options can be used to search only (or exclude from search) files with base name matches the specified Unix style GLOB pattern. The GLOB pattern an use *, ?, and [...] as wildcards, and \ to quote wildcard or backslash character literally. Note that the glob pattern is not a regular expression. [1] http://docs.python.org/library/re.html#regular-expression-syntax brz help [TOPIC]Options:
Aliases: ?, --help, -?, -h See also: topics Show help on a command or other topic. brz ignore [NAME_PATTERN...]Options:
See also: ignored, patterns, status Ignore specified files or patterns. See \*(Aq\*(Aqbrz help patterns\*(Aq\*(Aq for details on the syntax of patterns. If a .bzrignore file does not exist, the ignore command will create one and add the specified files or patterns to the newly created file. The ignore command will also automatically add the.bzrignore file to be versioned. Creating a .bzrignore file without the use of the ignore command will require an explicit add command. To remove patterns from the ignore list, edit the .bzrignore file. After adding, editing or deleting that file either indirectly by using this command or directly by using an editor, be sure to commit it. Breezy also supports a global ignore file ~/.config/breezy/ignore. On Windows the global ignore file can be found in the application data directory as C:\Documents and Settings\<user>\Application Data\Breezy\3.0\ignore. Global ignores are not touched by this command. The global ignore file can be edited directly using an editor. Patterns prefixed with '!' are exceptions to ignore patterns and take precedence over regular ignores. Such exceptions are used to specify files that should be versioned which would otherwise be ignored. Patterns prefixed with '!!' act as regular ignore patterns, but have precedence over the '!' exception patterns. Notes: * Ignore patterns containing shell wildcards must be quoted from
* Ignore patterns starting with "#" act as comments in
the ignore file.
Examples:
brz ignoredOptions:
See also: ignore, ls List ignored files and the patterns that matched them. List all the ignored files and the ignore pattern that caused the file to be ignored. Alternatively, to list just the files:
brz import SOURCE [TREE]Options:
Import sources from a directory, tarball or zip file This command will import a directory, tarball or zip file into a bzr tree, replacing any versioned files already present. If a directory is specified, it is used as the target. If the directory does not exist, or is not versioned, it is created. Tarballs may be gzip or bzip2 compressed. This is autodetected. If the tarball or zip has a single root directory, that directory is stripped when extracting the tarball. This is not done for directories. brz info [LOCATION]Options:
See also: repositories, revno, working-trees Show information about a working tree, branch or repository. This command will show all known locations and formats associated to the tree, branch or repository. In verbose mode, statistical information is included with each report. To see extended statistic information, use a verbosity level of 2 or higher by specifying the verbose option multiple times, e.g. -vv. Branches and working trees will also report any missing revisions. Examples:
brz init [LOCATION]Options:
See also: branch, checkout, init-shared-repository Make a directory into a versioned branch. Use this to create an empty branch, or before importing an existing project. If there is a repository in a parent directory of the location, then the history of the branch will be stored in the repository. Otherwise init creates a standalone branch which carries its own history in the .bzr directory. If there is already a branch at the location but it has no working tree, the tree can be populated with 'brz checkout'. Recipe for importing a tree of files:
brz init-repoAlias for "init-shared-repository", see "brz init-shared-repository". brz init-shared-repoAlias for "init-shared-repository", see "brz init-shared-repository". brz init-shared-repository LOCATIONOptions:
Aliases: init-shared-repo, init-repo See also: branch, checkout, init, repositories Create a shared repository for branches to share storage space. New branches created under the repository directory will store their revisions in the repository, not in the branch directory. For branches with shared history, this reduces the amount of storage needed and speeds up the creation of new branches. If the --no-trees option is given then the branches in the repository will not have working trees by default. They will still exist as directories on disk, but they will not have separate copies of the files at a certain revision. This can be useful for repositories that store branches which are interacted with through checkouts or remote branches, such as on a server. Examples:
brz join TREEOptions:
See also: split Combine a tree into its containing tree. This command requires the target tree to be in a rich-root format. The TREE argument should be an independent tree, inside another tree, but not part of it. (Such trees can be produced by "brz split", but also by running "brz branch" with the target inside a tree.) The result is a combined tree, with the subtree no longer an independent part. This is marked as a merge of the subtree into the containing tree, and all history is preserved. brz launchpad-login [NAME]Options:
Alias: lp-login Show or set the Launchpad user ID. When communicating with Launchpad, some commands need to know your Launchpad user ID. This command can be used to set or show the user ID that Bazaar will use for such communication. Examples:
brz launchpad-logoutOptions:
Alias: lp-logout Unset the Launchpad user ID. When communicating with Launchpad, some commands need to know your Launchpad user ID. This command will log you out from Launchpad. This means that communication with Launchpad will happen over HTTPS, and will not require one of your SSH keys to be available. brz launchpad-open [LOCATION]Options:
Alias: lp-open Open a Launchpad branch page in your web browser. brz link-tree LOCATIONOptions:
Hardlink matching files to another tree. Only files with identical content and execute bit will be linked. brz log [FILE...]Options:
See also: log-formats, revisionspec Show historical log for a branch or subset of a branch. log is brz's default tool for exploring the history of a branch. The branch to use is taken from the first parameter. If no parameters are given, the branch containing the working directory is logged. Here are some simple examples:
The filtering, ordering and information shown for each revision can be controlled as explained below. By default, all revisions are shown sorted (topologically) so that newer revisions appear before older ones and descendants always appear before ancestors. If displayed, merged revisions are shown indented under the revision in which they were merged. Output control:
Ordering control:
Revision filtering:
Path filtering:
Other filtering:
Tips & tricks:
brz lp-find-proposalOptions:
Find the proposal to merge this revision. Finds the merge proposal(s) that discussed landing the specified revision. This works only if the if the merged_revno was recorded for the merge proposal. The proposal(s) are opened in a web browser. Only the revision specified is searched for. To find the mainline revision that merged it into mainline, use the "mainline" revision spec. So, to find the merge proposal that reviewed line 1 of README:
brz lp-loginAlias for "launchpad-login", see "brz launchpad-login". brz lp-logoutAlias for "launchpad-logout", see "brz launchpad-logout". brz lp-openAlias for "launchpad-open", see "brz launchpad-open". brz ls [PATH]Options:
See also: cat, status List files in a tree. brz merge [LOCATION]Options:
See also: remerge, send, status-flags, update Perform a three-way merge. The source of the merge can be specified either in the form of a branch, or in the form of a path to a file containing a merge directive generated with brz send. If neither is specified, the default is the upstream branch or the branch most recently merged using --remember. The source of the merge may also be specified in the form of a path to a file in another branch: in this case, only the modifications to that file are merged into the current working tree. When merging from a branch, by default brz will try to merge in all new work from the other branch, automatically determining an appropriate base revision. If this fails, you may need to give an explicit base. To pick a different ending revision, pass "--revision OTHER". brz will try to merge in all new work up to and including revision OTHER. If you specify two values, "--revision BASE..OTHER", only revisions BASE through OTHER, excluding BASE but including OTHER, will be merged. If this causes some revisions to be skipped, i.e. if the destination branch does not already contain revision BASE, such a merge is commonly referred to as a "cherrypick". Unlike a normal merge, Breezy does not currently track cherrypicks. The changes look like a normal commit, and the history of the changes from the other branch is not stored in the commit. Revision numbers are always relative to the source branch. Merge will do its best to combine the changes in two branches, but there are some kinds of problems only a human can fix. When it encounters those, it will mark a conflict. A conflict means that you need to fix something, before you can commit. Use brz resolve when you have fixed a problem. See also brz conflicts. If there is no default branch set, the first merge will set it (use --no-remember to avoid setting it). After that, you can omit the branch to use the default. To change the default, use --remember. The value will only be saved if the remote location can be accessed. The results of the merge are placed into the destination working directory, where they can be reviewed (with brz diff), tested, and then committed to record the result of the merge. merge refuses to run if there are any uncommitted changes, unless --force is given. If --force is given, then the changes from the source will be merged with the current working tree, including any uncommitted changes in the tree. The --force option can also be used to create a merge revision which has more than two parents. If one would like to merge changes from the working tree of the other branch without merging any committed revisions, the --uncommitted option can be given. To select only some changes to merge, use "merge -i", which will prompt you to apply each diff hunk and file change, similar to "shelve". Examples:
brz missing [OTHER_BRANCH]Options:
See also: merge, pull Show unmerged/unpulled revisions between two branches. OTHER_BRANCH may be local or remote. To filter on a range of revisions, you can use the command -r begin..end -r revision requests a specific revision, -r ..end or -r begin.. are also valid. Exit values:
Examples:
brz mkdir DIR...Options:
Create a new versioned directory. This is equivalent to creating the directory and then adding it. brz moveAlias for "mv", see "brz mv". brz mv [NAMES...]Options:
Aliases: move, rename Move or rename a file. Usage:
If the last argument is a versioned directory, all the other names are moved into it. Otherwise, there must be exactly two arguments and the file is changed to a new name. If OLDNAME does not exist on the filesystem but is versioned and NEWNAME does exist on the filesystem but is not versioned, mv assumes that the file has been manually moved and only updates its internal inventory to reflect that change. The same is valid when moving many SOURCE files to a DESTINATION. Files cannot be moved between branches. brz nick [NICKNAME]Options:
See also: info Print or set the branch nickname. If unset, the colocated branch name is used for colocated branches, and the branch directory name is used for other branches. To print the current nickname, execute with no argument. Bound branches use the nickname of its master branch unless it is set locally. brz pack [BRANCH_OR_REPO]Options:
See also: repositories Compress the data within a repository. This operation compresses the data within a bazaar repository. As bazaar supports automatic packing of repository, this operation is normally not required to be done manually. During the pack operation, bazaar takes a backup of existing repository data, i.e. pack files. This backup is eventually removed by bazaar automatically when it is safe to do so. To save disk space by removing the backed up pack files, the --clean-obsolete-packs option may be used. Warning: If you use --clean-obsolete-packs and your machine crashes during or immediately after repacking, you may be left with a state where the deletion has been written to disk but the new packs have not been. In this case the repository may be unusable. brz patch [FILENAME]Options:
Apply a named patch to the current tree. brz ping LOCATIONOptions:
Pings a Bazaar smart server. This command sends a 'hello' request to the given location using the brz smart protocol, and reports the response. brz pluginsOptions:
List the installed plugins. This command displays the list of installed plugins including version of plugin and a short description of each. --verbose shows the path where each plugin is located. A plugin is an external component for Breezy that extends the revision control system, by adding or replacing code in Breezy. Plugins can do a variety of things, including overriding commands, adding new commands, providing additional network transports and customizing log output. See the Bazaar Plugin Guide <http://doc.bazaar.canonical.com/plugins/en/> for further information on plugins including where to find them and how to install them. Instructions are also provided there on how to write new plugins using the Python programming language. brz praiseAlias for "annotate", see "brz annotate". brz pull [LOCATION]Options:
See also: push, send, status-flags, update Turn this branch into a mirror of another branch. By default, this command only works on branches that have not diverged. Branches are considered diverged if the destination branch's most recent commit is one that has not been merged (directly or indirectly) into the parent. If branches have diverged, you can use 'brz merge' to integrate the changes from one into the other. Once one branch has merged, the other should be able to pull it again. If you want to replace your local changes and just want your branch to match the remote one, use pull --overwrite. This will work even if the two branches have diverged. If there is no default location set, the first pull will set it (use --no-remember to avoid setting it). After that, you can omit the location to use the default. To change the default, use --remember. The value will only be saved if the remote location can be accessed. The --verbose option will display the revisions pulled using the log_format configuration option. You can use a different format by overriding it with -Olog_format=<other_format>. Note: The location can be specified either in the form of a branch, or in the form of a path to a file containing a merge directive generated with brz send. brz push [LOCATION]Options:
See also: pull, update, working-trees Update a mirror of this branch. The target branch will not have its working tree populated because this is both expensive, and is not supported on remote file systems. Some smart servers or protocols *may* put the working tree in place in the future. This command only works on branches that have not diverged. Branches are considered diverged if the destination branch's most recent commit is one that has not been merged (directly or indirectly) by the source branch. If branches have diverged, you can use 'brz push --overwrite' to replace the other branch completely, discarding its unmerged changes. If you want to ensure you have the different changes in the other branch, do a merge (see brz help merge) from the other branch, and commit that. After that you will be able to do a push without '--overwrite'. If there is no default push location set, the first push will set it (use --no-remember to avoid setting it). After that, you can omit the location to use the default. To change the default, use --remember. The value will only be saved if the remote location can be accessed. The --verbose option will display the revisions pushed using the log_format configuration option. You can use a different format by overriding it with -Olog_format=<other_format>. brz reconcile [BRANCH]Options:
See also: check Reconcile brz metadata in a branch. This can correct data mismatches that may have been caused by previous ghost operations or brz upgrades. You should only need to run this command if 'brz check' or a brz developer advises you to run it. If a second branch is provided, cross-branch reconciliation is also attempted, which will check that data like the tree root id which was not present in very early brz versions is represented correctly in both branches. At the same time it is run it may recompress data resulting in a potential saving in disk space or performance gain. The branch *MUST* be on a listable system such as local disk or sftp. brz reconfigure [LOCATION]Options:
See also: branches, checkouts, standalone-trees, working-trees Reconfigure the type of a brz directory. A target configuration must be specified. For checkouts, the bind-to location will be auto-detected if not specified. The order of preference is 1. For a lightweight checkout, the current bound location. 2. For branches that used to be checkouts, the previously-bound location. 3. The push location. 4. The parent location. If none of these is available, --bind-to must be specified. brz remerge [FILE...]Options:
Redo a merge. Use this if you want to try a different merge technique while resolving conflicts. Some merge techniques are better than others, and remerge lets you try different ones on different files. The options for remerge have the same meaning and defaults as the ones for merge. The difference is that remerge can (only) be run when there is a pending merge, and it lets you specify particular files. Examples:
brz remove [FILE...]Options:
Aliases: rm, del Remove files or directories. This makes Breezy stop tracking changes to the specified files. Breezy will delete them if they can easily be recovered using revert otherwise they will be backed up (adding an extension of the form .~#~). If no options or parameters are given Breezy will scan for files that are being tracked by Breezy but missing in your tree and stop tracking them for you. brz remove-branch [LOCATION]Options:
Alias: rmbranch Remove a branch. This will remove the branch from the specified location but will keep any working tree or repository in place. Examples:
brz remove-tree [LOCATION...]Options:
See also: checkout, working-trees Remove the working tree from a given branch/checkout. Since a lightweight checkout is little more than a working tree this will refuse to run against one. To re-create the working tree, use "brz checkout". brz renameAlias for "mv", see "brz mv". brz renames [DIR]Options:
See also: status Show list of renamed files. brz resolve [FILE...]Options:
Alias: resolved See also: conflicts Mark a conflict as resolved. Merge will do its best to combine the changes in two branches, but there are some kinds of problems only a human can fix. When it encounters those, it will mark a conflict. A conflict means that you need to fix something, before you can commit. Once you have fixed a problem, use "brz resolve" to automatically mark text conflicts as fixed, "brz resolve FILE" to mark a specific conflict as resolved, or "brz resolve --all" to mark all conflicts as resolved. brz resolvedAlias for "resolve", see "brz resolve". brz revert [FILE...]Options:
See also: cat, export, merge, shelve Set files in the working tree back to the contents of a previous revision. Giving a list of files will revert only those files. Otherwise, all files will be reverted. If the revision is not specified with '--revision', the working tree basis revision is used. A revert operation affects only the working tree, not any revision history like the branch and repository or the working tree basis revision. To remove only some changes, without reverting to a prior version, use merge instead. For example, "merge . -r -2..-3" (don't forget the ".") will remove the changes introduced by the second last commit (-2), without affecting the changes introduced by the last commit (-1). To remove certain changes on a hunk-by-hunk basis, see the shelve command. To update the branch to a specific revision or the latest revision and update the working tree accordingly while preserving local changes, see the update command. Uncommitted changes to files that are reverted will be discarded. However, by default, any files that have been manually changed will be backed up first. (Files changed only by merge are not backed up.) Backup files have '.~#~' appended to their name, where # is a number. When you provide files, you can use their current pathname or the pathname from the target revision. So you can use revert to "undelete" a file by name. If you name a directory, all the contents of that directory will be reverted. If you have newly added files since the target revision, they will be removed. If the files to be removed have been changed, backups will be created as above. Directories containing unknown files will not be deleted. The working tree contains a list of revisions that have been merged but not yet committed. These revisions will be included as additional parents of the next commit. Normally, using revert clears that list as well as reverting the files. If any files are specified, revert leaves the list of uncommitted merges alone and reverts only the files. Use \*(Aq\*(Aqbrz revert.\*(Aq\*(Aq in the tree root to revert all files but keep the recorded merges, and \*(Aq\*(Aqbrz revert --forget-merges\*(Aq\*(Aq to clear the pending merge list without reverting any files. Using "brz revert --forget-merges", it is possible to apply all of the changes from a branch in a single revision. To do this, perform the merge as desired. Then doing revert with the "--forget-merges" option will keep the content of the tree as it was, but it will clear the list of pending merges. The next commit will then contain all of the changes that are present in the other branch, but without any other parent revisions. Because this technique forgets where these changes originated, it may cause additional conflicts on later merges involving the same source and target branches. brz revno [LOCATION]Options:
See also: info Show current revision number. This is equal to the number of revisions on this branch. brz rmAlias for "remove", see "brz remove". brz rmbranchAlias for "remove-branch", see "brz remove-branch". brz root [FILENAME]Options:
Show the tree root directory. The root is the nearest enclosing directory with a control directory. brz send [SUBMIT_BRANCH] [PUBLIC_BRANCH]Options:
See also: merge, pull Mail or create a merge-directive for submitting changes. A merge directive provides many things needed for requesting merges: * A machine-readable description of the merge to perform * An optional patch that is a preview of the changes requested * An optional bundle of revision data, so that the changes can be
applied
\*(Aqbrz send\*(Aq creates a compact data set that, when applied using brz merge, has the same effect as merging from the source branch. By default the merge directive is self-contained and can be applied to any branch containing submit_branch in its ancestory without needing access to the source branch. If --no-bundle is specified, then Breezy doesn't send the contents of the revisions, but only a structured request to merge from the public_location. In that case the public_branch is needed and it must be up-to-date and accessible to the recipient. The public_branch is always included if known, so that people can check it later. The submit branch defaults to the parent of the source branch, but can be overridden. Both submit branch and public branch will be remembered in branch.conf the first time they are used for a particular branch. The source branch defaults to that containing the working directory, but can be changed using --from. Both the submit branch and the public branch follow the usual behavior with respect to --remember: If there is no default location set, the first send will set it (use --no-remember to avoid setting it). After that, you can omit the location to use the default. To change the default, use --remember. The value will only be saved if the location can be accessed. In order to calculate those changes, brz must analyse the submit branch. Therefore it is most efficient for the submit branch to be a local mirror. If a public location is known for the submit_branch, that location is used in the merge directive. The default behaviour is to send the merge directive by mail, unless -o is given, in which case it is sent to a file. Mail is sent using your preferred mail program. This should be transparent on Windows (it uses MAPI). On Unix, it requires the xdg-email utility. If the preferred client can't be found (or used), your editor will be used. To use a specific mail program, set the mail_client configuration option. Supported values for specific clients are "claws", "evolution", "kmail", "mail.app" (MacOS X's Mail.app), "mutt", and "thunderbird"; generic options are "default", "editor", "emacsclient", "mapi", and "xdg-email". Plugins may also add supported clients. If mail is being sent, a to address is required. This can be supplied either on the commandline, by setting the submit_to configuration option in the branch itself or the child_submit_to configuration option in the submit branch. The merge directives created by brz send may be applied using brz merge or brz pull by specifying a file containing a merge directive as the location. brz send makes extensive use of public locations to map local locations into URLs that can be used by other people. See \*(Aqbrz help configuration\*(Aq to set them, and use \*(Aqbrz info\*(Aq to display them. brz serveOptions:
Alias: server Run the brz server. brz serverAlias for "serve", see "brz serve". brz shelve [FILE...]Options:
See also: configuration, unshelve Temporarily set aside some changes from the current tree. Shelve allows you to temporarily put changes you've made "on the shelf", ie. out of the way, until a later time when you can bring them back from the shelf with the 'unshelve' command. The changes are stored alongside your working tree, and so they aren't propagated along with your branch nor will they survive its deletion. If shelve --list is specified, previously-shelved changes are listed. Shelve is intended to help separate several sets of changes that have been inappropriately mingled. If you just want to get rid of all changes and you don't need to restore them later, use revert. If you want to shelve all text changes at once, use shelve --all. If filenames are specified, only the changes to those files will be shelved. Other files will be left untouched. If a revision is specified, changes since that revision will be shelved. You can put multiple items on the shelf, and by default, 'unshelve' will restore the most recently shelved changes. For complicated changes, it is possible to edit the changes in a separate editor program to decide what the file remaining in the working copy should look like. To do this, add the configuration option
where {new_path} is replaced with the path of the new version of the file and {old_path} is replaced with the path of the old version of the file. The PROGRAM should save the new file with the desired contents of the file in the working tree. brz sign-my-commits [LOCATION] [COMMITTER]Options:
Sign all commits by a given committer. If location is not specified the local tree is used. If committer is not specified the default committer is used. This does not sign commits that already have signatures. brz split TREEOptions:
See also: join Split a subdirectory of a tree into a separate tree. This command will produce a target tree in a format that supports rich roots, like 'rich-root' or 'rich-root-pack'. These formats cannot be converted into earlier formats like 'dirstate-tags'. The TREE argument should be a subdirectory of a working tree. That subdirectory will be converted into an independent tree, with its own branch. Commits in the top-level tree will not apply to the new subtree. brz stAlias for "status", see "brz status". brz statAlias for "status", see "brz status". brz status [FILE...]Options:
Aliases: st, stat See also: diff, revert, status-flags Display status summary. This reports on versioned and unknown files, reporting them grouped by state. Possible states are: added
removed
renamed
modified
kind changed
unknown
Additionally for directories, symlinks and files with a changed executable bit, Breezy indicates their type using a trailing character: '/', '@' or '*' respectively. These decorations can be disabled using the '--no-classify' option. To see ignored files use 'brz ignored'. For details on the changes to file texts, use 'brz diff'. Note that --short or -S gives status flags for each item, similar to Subversion's status command. To get output similar to svn -q, use brz status -SV. If no arguments are specified, the status of the entire working directory is shown. Otherwise, only the status of the specified files or directories is reported. If a directory is given, status is reported for everything inside that directory. Before merges are committed, the pending merge tip revisions are shown. To see all pending merge revisions, use the -v option. To skip the display of pending merge information altogether, use the no-pending option or specify a file/directory. To compare the working directory to a specific revision, pass a single revision to the revision argument. To see which files have changed in a specific revision, or between two revisions, pass a revision range to the revision argument. This will produce the same results as calling 'brz diff --summarize'. brz switch [TO_LOCATION]Options:
Set the branch of a checkout and update. For lightweight checkouts, this changes the branch being referenced. For heavyweight checkouts, this checks that there are no local commits versus the current bound branch, then it makes the local branch a mirror of the new location and binds to it. In both cases, the working tree is updated and uncommitted changes are merged. The user can commit or revert these as they desire. Pending merges need to be committed or reverted before using switch. The path to the branch to switch to can be specified relative to the parent directory of the current branch. For example, if you are currently in a checkout of /path/to/branch, specifying 'newbranch' will find a branch at /path/to/newbranch. Bound branches use the nickname of its master branch unless it is set locally, in which case switching will update the local nickname to be that of the master. brz tag [TAG_NAME]Options:
See also: commit, tags Create, remove or modify a tag naming a revision. Tags give human-meaningful names to revisions. Commands that take a -r (--revision) option can be given -rtag:X, where X is any previously created tag. Tags are stored in the branch. Tags are copied from one branch to another along when you branch, push, pull or merge. It is an error to give a tag name that already exists unless you pass --force, in which case the tag is moved to point to the new revision. To rename a tag (change the name but keep it on the same revsion), run \*(Aq\*(Aqbrz tag new-name -r tag:old-name\*(Aq\*(Aq and then \*(Aq\*(Aqbrz tag --delete oldname\*(Aq\*(Aq. If no tag name is specified it will be determined through the 'automatic_tag_name' hook. This can e.g. be used to automatically tag upstream releases by reading configure.ac. See \*(Aq\*(Aqbrz help hooks\*(Aq\*(Aq for details. brz tagsOptions:
See also: tag List tags. This command shows a table of tag names and the revisions they reference. brz testament [BRANCH]Options:
Show testament (signing-form) of a revision. brz unbindOptions:
See also: bind, checkouts Convert the current checkout into a regular branch. After unbinding, the local branch is considered independent and subsequent commits will be local only. brz uncommit [LOCATION]Options:
See also: commit Remove the last committed revision. --verbose will print out what is being removed. --dry-run will go through all the motions, but not actually remove anything. If --revision is specified, uncommit revisions to leave the branch at the specified revision. For example, "brz uncommit -r 15" will leave the branch at revision 15. Uncommit leaves the working tree ready for a new commit. The only change it may make is to restore any pending merges that were present before the commit. brz unshelve [SHELF_ID]Options:
See also: shelve Restore shelved changes. By default, the most recently shelved changes are restored. However if you specify a shelf by id those changes will be restored instead. This works best when the changes don't depend on each other. brz upAlias for "update", see "brz update". brz update [DIR]Options:
Alias: up See also: pull, status-flags, working-trees Update a working tree to a new revision. This will perform a merge of the destination revision (the tip of the branch, or the specified revision) into the working tree, and then make that revision the basis revision for the working tree. You can use this to visit an older revision, or to update a working tree that is out of date from its branch. If there are any uncommitted changes in the tree, they will be carried across and remain as uncommitted changes after the update. To discard these changes, use 'brz revert'. The uncommitted changes may conflict with the changes brought in by the change in basis revision. If the tree's branch is bound to a master branch, brz will also update the branch from the master. You cannot update just a single file or directory, because each Breezy working tree has just a single basis revision. If you want to restore a file that has been removed locally, use 'brz revert' instead of 'brz update'. If you want to restore a file to its state in a previous revision, use 'brz revert' with a '-r' option, or use 'brz cat' to write out the old content of that file to a new location. The 'dir' argument, if given, must be the location of the root of a working tree to update. By default, the working tree that contains the current working directory is used. brz upgrade [URL]Options:
See also: check, formats, reconcile Upgrade a repository, branch or working tree to a newer format. When the default format has changed after a major new release of Bazaar/Breezy, you may be informed during certain operations that you should upgrade. Upgrading to a newer format may improve performance or make new features available. It may however limit interoperability with older repositories or with older versions of Bazaar or Breezy. If you wish to upgrade to a particular format rather than the current default, that can be specified using the --format option. As a consequence, you can use the upgrade command this way to "downgrade" to an earlier format, though some conversions are a one way process (e.g. changing from the 1.x default to the 2.x default) so downgrading is not always possible. A backup.bzr.~#~ directory is created at the start of the conversion process (where # is a number). By default, this is left there on completion. If the conversion fails, delete the new .bzr directory and rename this one back in its place. Use the --clean option to ask for the backup.bzr directory to be removed on successful conversion. Alternatively, you can delete it by hand if everything looks good afterwards. If the location given is a shared repository, dependent branches are also converted provided the repository converts successfully. If the conversion of a branch fails, remaining branches are still tried. For more information on upgrades, see the Breezy Upgrade Guide, https://www.breezy-vcs.org/doc/en/upgrade-guide/. brz verify-signatures [LOCATION]Options:
Verify all commit signatures. Verifies that all commits in the branch are signed by known GnuPG keys. brz versionOptions:
Show version of brz. brz version-info [LOCATION]Options:
Show version information about this tree. You can use this command to add information about version into source code of an application. The output can be in one of the supported formats or in a custom format based on a template. For example:
will produce a C header file with formatted string containing the current revision number. Other supported variables in templates are:
brz view [FILE...]Options:
Manage filtered views. Views provide a mask over the tree so that users can focus on a subset of a tree when doing their work. After creating a view, commands that support a list of files - status, diff, commit, etc - effectively have that list of files implicitly given each time. An explicit list of files can still be given but those files must be within the current view. In most cases, a view has a short life-span: it is created to make a selected change and is deleted once that change is committed. At other times, you may wish to create one or more named views and switch between them. To disable the current view without deleting it, you can switch to the pseudo view called \*(Aq\*(Aqoff\*(Aq\*(Aq. This can be useful when you need to see the whole tree for an operation or two (e.g. merge) but want to switch back to your view after that. Examples:
brz whoami [NAME]Options:
Show or set brz user id. Examples:
ENVIRONMENT
FILES
SEE ALSO
|