19
19
This guide takes you through installing Bazaar and how to use it,
20
20
whether on your own or with a team of other people. If you're already
21
familiar with distributed version control and want to dive straight in,
21
familiar with distributed version control and want to dive straight in,
22
22
you may wish to skim this section and jump straight to
26
26
------------------------------------------
28
28
Version control tools have been evolving for several decades now. In
29
simple terms, there have been 4 generations of tools:
29
simple terms, there have been 5 generations of tools:
31
31
1. file versioning tools, e.g. SCCS, RCS
32
32
2. tree versioning tools - central style, e.g. CVS
33
3. tree versioning tools - central style, take two, e.g. Subversion
34
4. tree versioning tools - distributed style, e.g. Bazaar.
33
3. tree versioning tools - central style, done right, e.g. Subversion
34
4. tree versioning tools - distributed style, e.g. Arch
35
5. tree versioning tools - distributed style, done right, e.g. Bazaar.
36
37
The design and implementation of Bazaar builds on the lessons learned
37
38
from all the previous generations of tools. In particular, Bazaar
49
50
To record or *commit* these changes, the user needs access to the central
50
51
server and they need to ensure they have merged their work with the latest
51
52
version stored before trying to commit. This approach is known as the
54
55
The centralized model has proven useful over time but it can have some notable
55
56
drawbacks. Firstly, a centralized VCS requires that one is able to connect
98
99
While Bazaar is not the only distributed VCS tool around, it does have some
99
100
notable features that make it an excellent choice for many teams and
100
communities. A summary of these and comparisons with other VCS tools
101
can be found on the Bazaar Wiki, http://bazaar-vcs.org.
103
Of the many features, one in particular is worth highlighting:
104
Bazaar is completely free software written in Python. As a result,
105
it is easy to contribute improvements. If you wish to get involved,
106
please see http://bazaar-vcs.org/BzrSupport.
101
communities. These include:
103
* it **Just Works** - a high focus on usability and performance
104
* **adaptive** - cleanly supports many different ways of working together
105
* **rich metadata** that tracks merge history across distributed locations,
106
understands directories as first-class objects and correctly tracks
107
renames of both files and directories
108
* **integrated merging** that uses this metadata intelligently to
109
ensure that merging is safe without being painful, letting you
110
collaborate without fear
111
* **truly portable** across many operating systems including Windows
112
* **safe with your data** - integrity is checked using cryptographic
113
techniques and all changes can be digitally signed if required
114
* **low administration**, e.g. access to FTP or SFTP is enough to
115
share with others - no special server required
116
* **efficiently stores data** across branches in a flexible and safe way
117
* an **open architecture and API** that makes it easy to integrate
119
* a **large number of plugins** including bzr-svn and GUI front-ends
120
* **excellent integration** with a range of companion tools and services
121
including PQM, Bundle Buggy and Launchpad
122
* **completely open source**
123
* **commercial training and support** available from Canonical,
124
the company that sponsors Ubuntu.
126
While all of these are important, perhaps the greatest asset Bazaar has is
127
an active and growing open source community behind it. Bazaar is completely
128
free software written in Python so it is easy to contribute improvements.
129
Our collective goal is to build and support a distributed VCS tool that
130
developers love to use, a tool that helps them get their job done without
131
getting in their way. If you wish to get involved, please see
132
http://bazaar-vcs.org/BzrSupport.
119
145
Chapters 2-6 provide a closer look at how to use Bazaar to complete
120
146
various tasks. It is recommended that most users read these in first-to-last
121
order shortly after starting to use Bazaar. Chapter 7 and beyond provide
122
additional information that helps you make the most of Bazaar once the core
123
functionality is understood. This material can be read when required and in
147
order shortly after starting to use Bazaar. Chapters 7 and beyond provide
148
additional information including some recommended best practices.
149
This material can be read when required and in any order.
126
If you are already familiar with other version control tools,
151
If you are already familar with other version control tools,
127
152
you may wish to get started quickly by reading the following documents:
129
154
* `Bazaar in five minutes`_ - a mini-tutorial
131
156
* `Bazaar Quick Start Card`_ - a one page summary of commonly used commands.
133
In addition, the online help and `Bazaar User Reference`_ provide all the
134
details on the commands and options available.
158
The online help and `Bazaar User Reference`_ are also particularly useful as
159
they provide all the gory details on the commands and options available.
136
161
.. _Bazaar in five minutes: ../mini-tutorial/index.html
137
162
.. _Bazaar Quick Start Card: ../quick-reference/quick-start-summary.svg
138
.. _Bazaar User Reference: ../user-reference/index.html
163
.. _Bazaar User Reference: ../user-reference/bzr_man.html
140
165
We hope you find this manual useful. If you have suggestions on how it
141
166
or the rest of Bazaar's documentation can be improved, please contact