/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to doc/en/user-guide/introducing_bazaar.txt

(John Arbash Meinel) Change Branch.pull() so it doesn't have to
        search all history all the time.

Show diffs side-by-side

added added

removed removed

Lines of Context:
4
4
What is Bazaar?
5
5
---------------
6
6
 
7
 
Bazaar is a tool for helping people collaborate. It tracks the changes
8
 
that you and other people make to a group of files - such as software
9
 
source code - to give you snapshots of each stage of their evolution.
10
 
Using that information, Bazaar can effortlessly merge your work with
11
 
other people's.
12
 
 
13
 
Tools like Bazaar are called version control systems (VCS) and have
14
 
long been popular with software developers. Bazaar's ease of use,
15
 
flexibility and simple setup make it ideal not only for software
16
 
developers but also for other groups who work together on files and
17
 
documents, such as technical writers, web designers and translators.
18
 
 
19
 
This guide takes you through installing Bazaar and how to use it,
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,
22
 
you may wish to skim this section and jump straight to
23
 
`Learning more`_.
 
7
Bazaar is a tool for helping people collaborate. It does this by
 
8
tracking how a group of files evolves and using that information to help
 
9
people merge their changes together as safely as possible.
 
10
 
 
11
In general, tools that do this are known as revision control systems or
 
12
version control systems (VCS). In the past, VCS tools have been popular
 
13
with software developers. In the future, VCS tools will undoubtedly also be
 
14
important for other groups of people looking to work together on
 
15
files and documents, e.g. technical writers and translators.
24
16
 
25
17
A brief history of version control systems
26
18
------------------------------------------
27
19
 
28
 
Version control tools have been evolving for several decades now. In
29
 
simple terms, there have been 4 generations of tools:
 
20
VCS tools have been evolving for several decades now. In simple terms,
 
21
there have been 5 generations of tools:
30
22
 
31
 
 1. file versioning tools, e.g. SCCS, RCS
 
23
 1. file versioning tools, e.g. SCCS, VCS
32
24
 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.
 
25
 3. tree versioning tools - central style, done right, e.g. Subversion
 
26
 4. tree versioning tools - distributed style, e.g. Arch
 
27
 5. tree versioning tools - distributed style, done right, e.g. Bazaar.
35
28
 
36
29
The design and implementation of Bazaar builds on the lessons learned
37
30
from all the previous generations of tools. In particular, Bazaar
47
40
users need to connect to the server and *checkout* the files. This gives
48
41
them a directory or *working tree* in which a person can make changes.
49
42
To record or *commit* these changes, the user needs access to the central
50
 
server and they need to ensure they have merged their work with the latest
 
43
server and they need to unsure they have merged their work with the latest
51
44
version stored before trying to commit. This approach is known as the
52
 
centralized model.
 
45
centralized model. 
53
46
 
54
47
The centralized model has proven useful over time but it can have some notable
55
48
drawbacks. Firstly, a centralized VCS requires that one is able to connect
87
80
     move them into the core
88
81
 
89
82
 * in companies, easier to work with distributed and outsourced teams.
90
 
 
 
83
   
91
84
For a detailed look at the advantages of distributed VCS tools over
92
85
centralized VCS tools, see http://bazaar-vcs.org/BzrWhy.
93
86
 
97
90
 
98
91
While Bazaar is not the only distributed VCS tool around, it does have some
99
92
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.
102
 
 
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.
 
93
communities. These include:
 
94
 
 
95
 * it **Just Works** - a high focus on usability and performance
 
96
 * **adaptive** - cleanly supports many different ways of working together
 
97
 * **rich metadata** that tracks merge history across distributed locations,
 
98
   understands directories as first-class objects and correctly tracks
 
99
   renames of both files and directories
 
100
 * **integrated merging** that uses this metadata intelligently to
 
101
   ensure that merging is safe without being painful, letting you
 
102
   collaborate without fear
 
103
 * **truly portable** across many operating systems including Windows
 
104
 * **safe with your data** - integrity is checked using cryptographic
 
105
   techniques and all changes can be digitally signed if required
 
106
 * **low administration**, e.g. access to FTP or SFTP is enough to
 
107
   share with others - no special server required
 
108
 * **efficiently stores data** across branches in a flexible and safe way
 
109
 * an **open architecture and API** that makes it easy to integrate
 
110
   with other tools
 
111
 * a **large number of plugins** including bzr-svn and GUI front-ends
 
112
 * **excellent integration** with a range of companion tools and services
 
113
   including PQM, Bundle Buggy and Launchpad
 
114
 * **completely open source**
 
115
 * **commercial training and support** available from Canonical,
 
116
   the company that sponsors Ubuntu.
 
117
 
 
118
While all of these are important, perhaps the greatest asset Bazaar has is
 
119
an active and growing open source community behind it. Bazaar is completely
 
120
free software written in Python so it is easy to contribute improvements.
 
121
Our collective goal is to build and support a distributed VCS tool that
 
122
developers love to use, a tool that helps them get their job done without
 
123
getting in their way. If you wish to get involved, please see
 
124
http://bazaar-vcs.org/Community.
107
125
 
108
126
 
109
127
Learning more
118
136
 
119
137
Chapters 2-6 provide a closer look at how to use Bazaar to complete
120
138
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
124
 
any order.
 
139
order shortly after starting to use Bazaar. Chapters 7 and beyond provide
 
140
additional information including some recommended best practices.
 
141
This material can be read when required and in any order.
125
142
 
126
 
If you are already familiar with other version control tools,
 
143
If you are already familar with other version control tools,
127
144
you may wish to get started quickly by reading the following documents:
128
145
 
129
146
 * `Bazaar in five minutes`_ - a mini-tutorial
130
147
 
131
 
 * `Bazaar Quick Start Card`_ - a one page summary of commonly used commands.
 
148
 * `Bazaar Quick Start Guide`_ - a one page summary of commonly used commands.
132
149
 
133
 
In addition, the online help and `Bazaar User Reference`_ provide all the
134
 
details on the commands and options available.
 
150
The online help and `Bazaar User Reference`_ are also particularly useful as
 
151
they provide all the gory details on the commands and options available.
135
152
 
136
153
.. _Bazaar in five minutes: ../mini-tutorial/index.html
137
 
.. _Bazaar Quick Start Card: ../quick-reference/index.html
138
 
.. _Bazaar User Reference: ../user-reference/index.html
 
154
.. _Bazaar Quick Start Guide: ../quick-reference/quick-start-summary.svg
 
155
.. _Bazaar User Reference: ../user-reference/bzr_man.html
139
156
 
140
157
We hope you find this manual useful. If you have suggestions on how it
141
158
or the rest of Bazaar's documentation can be improved, please contact