~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to doc/index.txt

- add a basic annotate built-in command

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
Bazaar-NG
 
2
*********
 
3
 
 
4
..   These documents are formatted as ReStructuredText.  You can    ..
 
5
..   convert them to HTML, PDF, etc using the ``python-docutils``   ..
 
6
..   package.                                                       ..
 
7
 
 
8
 
 
9
*Bazaar-NG* (``bzr``) is a project of `Canonical Ltd`__ to develop an
 
10
open source distributed version control system that is powerful,
 
11
friendly, and scalable.  The project is at an early stage of
 
12
development.
 
13
 
 
14
__ http://canonical.com/
 
15
 
 
16
 
 
17
**Note: These documents describe the initial design and are out of
 
18
date in parts.**  For more up-to-date information see the wiki at
 
19
http://bazaar.canonical.com/
 
20
 
 
21
For more information, see the homepage at http://bazaar-ng.org/
 
22
 
 
23
 
 
24
 
 
25
User documentation
 
26
------------------
 
27
 
 
28
* `Project overview/introduction <intro.html>`__
 
29
 
 
30
* `Command reference <cmdref.html>`__ -- intended to be user
 
31
  documentation, and gives the best overview at the moment of what the
 
32
  system will feel like to use.  Fairly complete.
 
33
 
 
34
 
 
35
Requirements and general design
 
36
-------------------------------
 
37
 
 
38
* `Various purposes of a VCS <purpose.html>`__ -- taking snapshots and
 
39
  helping with merges is not the whole story.
 
40
 
 
41
* `Requirements <requirements.html>`__
 
42
 
 
43
* `Costs <costs.html>`__ of various factors: time, disk, network, etc.
 
44
 
 
45
* `Deadly sins <deadly-sins.html>`__ that gcc maintainers suggest we avoid.
 
46
 
 
47
* `Overview of the whole design <design.html>`__ and miscellaneous
 
48
  small design points.
 
49
 
 
50
* `File formats <formats.html>`__
 
51
 
 
52
* `Random observations <random.html>`__ that don't fit anywhere else yet.
 
53
 
 
54
 
 
55
 
 
56
Design of particular features
 
57
-----------------------------
 
58
 
 
59
* `Automatic generation of ChangeLogs <changelogs.html>`__
 
60
 
 
61
* `Cherry picking <cherry-picking.html>`__ -- merge just selected non-contiguous changes  from a branch.
 
62
 
 
63
* `Common changeset format <common-format.html>`__ for  interchange
 
64
  format between VCS.
 
65
 
 
66
* `Compression <compression.html>`__ of file text for more efficient storage.
 
67
 
 
68
* `Config specs <config-specs.html>`__ assemble a tree from several places.
 
69
 
 
70
* `Conflicts <conflicts.html>`_ that can occur during merge-like
 
71
  operations.
 
72
 
 
73
* `Ignored files <ignore.html>`__
 
74
 
 
75
* `Recovering from interrupted operations <interrupted.html>`__
 
76
 
 
77
* `Inventory command <inventory.html>`__
 
78
 
 
79
* `Branch joins <join-branches.html>`__ represent that all the changes
 
80
  from one branch are integrated into another.
 
81
 
 
82
* `Kill a version <kill-version.html>`__ to fix a broken commit or
 
83
  wrong message, or to
 
84
  remove confidential information from the history.
 
85
 
 
86
* `Hash collisions <hashes.html>`__ and weaknesses, and the security
 
87
  implications thereof.
 
88
 
 
89
* `Layers <layers.html>`__ within the design
 
90
 
 
91
* `Library interface <library-interface.html>`__ for Python.
 
92
 
 
93
* `Merge <merge.html>`__
 
94
 
 
95
* `Mirroring <mirroring.html>`__
 
96
 
 
97
* `Optional edit command <optional-edit.html>`__: sometimes people
 
98
  want to make the  working copy read-only, or not present at all.
 
99
 
 
100
* `Partial commits <partial-commit.html>`__
 
101
 
 
102
* `Patch pools <pool.html>`__ to efficiently store related branches.
 
103
 
 
104
* `Revfiles <revfile.html>`__ store the text history of files.
 
105
 
 
106
* `Revfiles storing annotations <revfile-annotation.html>`__
 
107
 
 
108
* `Revision syntax <revision-syntax.html>`__ -- ``hello.c@12``, etc.
 
109
 
 
110
* `Roll-up commits <rollup.html>`__ -- a single revision incorporates
 
111
  the changes from several others.
 
112
 
 
113
* `Scalability <scalability.html>`__
 
114
 
 
115
* `Security <security.html>`__
 
116
 
 
117
* `Shared branches <shared-branches.html>`__ maintained by more than
 
118
  one person
 
119
 
 
120
* `Supportability <supportability.html>`__ -- how to handle any bugs
 
121
  or problems in the field.
 
122
 
 
123
* `Place tags on revisions for easy reference <tagging.html>`__
 
124
 
 
125
* `Detecting unchanged files <unchanged.html>`__
 
126
   
 
127
* `Merging previously-unrelated branches <unrelated-merge.html>`__
 
128
 
 
129
* `Usability principles <usability.html>`__ (very small at the moment)
 
130
 
 
131
* `<use-cases.html>`__
 
132
 
 
133
* `<web-interface.html>`__
 
134
 
 
135
* `<workflow.html>`__ Modelling/controlling flow of patches.
 
136
 
 
137
* `<yaml.html>`__ --  Discussion of using YAML_ as a storage or transmission format.
 
138
 
 
139
.. _YAML: http://www.yaml.org/
 
140
 
 
141
 
 
142
 
 
143
Comparisons to other systems
 
144
----------------------------
 
145
 
 
146
* `Taxonomy <taxonomy.html>`__: basic questions a VCS must answer.
 
147
 
 
148
* `Bitkeeper <bitkeeper.html>`__, the proprietary system used by some
 
149
  kernel developers.
 
150
 
 
151
* `Aegis <compared-aegis.html>`__, a tool focussed on enforcing
 
152
  process and workflow.
 
153
 
 
154
* `Codeville <compared-codeville.html>`__ has an intruiging but
 
155
  scarcely-documented merge algorithm.
 
156
 
 
157
* `CVSNT <compared-cvsnt.html>`__, with more Windows support and some
 
158
  merge enhancements.
 
159
 
 
160
* `OpenCM <compared-opencm.html>`__, another hash-based tool with a
 
161
  good whitepaper.
 
162
 
 
163
* `PRCS <compared-prcs.html>`__, a non-distributed inventory-based tool.
 
164
 
 
165
* `GNU Arch <todo-from-arch.html>`__, with many pros and cons.
 
166
 
 
167
* `Darcs <darcs.html>`__, a merge-focussed tool with good usability.
 
168
 
 
169
* `Quilt <quilt.html>`__ -- Andrew Morton's patch scripts, popular with kernel maintainers.
 
170
 
 
171
* `Monotone <monotone.html>`__, Graydon Hoare's hash-based distributed system.
 
172
 
 
173
* `SVK <svk.html>`__ --     distributed operation stacked on Subversion.
 
174
 
 
175
* `Sun Teamware <compared-teamware.html>`__
 
176
 
 
177
 
 
178
Project management and organization
 
179
-----------------------------------
 
180
 
 
181
* `Notes on how to get a VCS adopted <adoption.html>`__
 
182
 
 
183
* `Thanks <thanks.html>`__ to various people
 
184
 
 
185
* `Extra commands <extra-commands.html>`__ for
 
186
  internal/developer/debugger use.
 
187
 
 
188
* `Choice of Python as a development language <python.html>`__