Bazaar Formats
An explanation of the formats used by Bazaar. These formats can be used for creating branches, working trees, and repositories.
Current Formats
pack-0.92
New in 0.92: Pack-based format with data compatible with dirstate-tags format repositories. Interoperates with bzr repositories before 0.92 but cannot be read by bzr < 0.92. Previously called knitpack-experimental. For more information, see http://doc.bazaar-vcs.org/latest/developers/packrepo.html.
dirstate-tags
This format is new in Bazaar 0.15, and is the recommended format for using tags. Additionally, branches are smaller and do not increase in size as revisions are committed, because only the last-revision is stored. If you use dirstate-tags, you can convert your data into formats readable by clients as old as 0.7. If you use dirstate-with-subtree, only 0.15 and later will ever be able to read your data.
dirstate
This format is new in Bazaar 0.15. It provides faster working-tree operations. It is network-compatible with earlier Bazaar clients (back to 0.8), because it only updates the working tree format.
knit
This format was introduced in Bazaar 0.8. It provides maximum compatibility with older clients. It introduced a new knit -based repository format that allowed faster access and more compact storage of revisions.
dirstate-with-subtree
This format was introduced as a hidden format in Bazaar 0.15. It is an experimental format, not recommended for use.
It supports tags and NestedTrees. Additionally, branches are smaller and do not increase in size as revisions are committed, because only the last-revision is stored.
It is not network-compatible with earlier Bazaar clients, because the repository and branch formats have changed. In addition, it is not possible to convert a dirstate-with-subtree repository into an earlier format, because that would lose revision data.
Deprecated Formats
metaweave
This format was a transitional format in Bazaar 0.8. It was the first format to consider repositories, branches and working trees as three separate pieces which could be intermixed in a .bzr directory.
weave / Branch 5
This format was introduced in Bazaar 0.1. It used weaves provided more compressed storage with fast annotation. Technical description
Obsolete formats
Branch 4
Used flat-file storage with gzip compression. Bazaar 0.15 can upgrade this format into a modern one, but cannot work on it directly.
Changing Formats
The format of a branch, working tree or repository may be determined with bzr info LOCATION where LOCATION is the path to the branch, working tree or repository. If you would like to change the format, the command bzr upgrade exists to do exactly this. See bzr upgrade --help for more information.
