/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/mini-tutorial/index.txt

  • Committer: Martin Pool
  • Date: 2011-07-11 07:02:20 UTC
  • mto: (6034.2.1 integration)
  • mto: This revision was merged to the branch mainline in revision 6043.
  • Revision ID: mbp@canonical.com-20110711070220-5bwjqji5prmn6okw
Update launchpad plugin for features under tests.features

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
======================
 
2
Bazaar in five minutes
 
3
======================
 
4
 
 
5
Introduction
 
6
============
 
7
 
 
8
Bazaar is a distributed version control system that makes it easier for
 
9
people to work together on software projects.
 
10
 
 
11
Over the next five minutes, you'll learn how to put your files under
 
12
version control, how to record changes to them, examine your work, publish
 
13
it and send your work for merger into a project's trunk.
 
14
 
 
15
 
 
16
Installation
 
17
============
 
18
 
 
19
This guide doesn't describe how to install Bazaar but it's usually very
 
20
easy. You can find installation instructions at:
 
21
 
 
22
- **GNU/Linux:** Bazaar is probably in your GNU/Linux distribution already.
 
23
- **Windows:** `installation instructions for Windows`_.
 
24
- **Mac OS X:** `installation instructions for Mac OS X`_.
 
25
 
 
26
For other platforms and to install from source code, see the Download_
 
27
and Installation_ pages.
 
28
 
 
29
.. _installation instructions for Windows: http://wiki.bazaar.canonical.com/WindowsDownloads
 
30
.. _installation instructions for Mac OS X: http://wiki.bazaar.canonical.com/MacOSXBundle
 
31
.. _Download: http://wiki.bazaar.canonical.com/Download
 
32
.. _Installation: http://wiki.bazaar.canonical.com/InstallationFaq
 
33
 
 
34
 
 
35
Introducing yourself
 
36
====================
 
37
 
 
38
Bazaar records changes to source code, and it records who made the change.
 
39
The person is identified by their name and email address.  (If you're
 
40
concerned about spam, you don't need to use a real address that you
 
41
actually read, but the convention is that it looks like an email address.)
 
42
 
 
43
Before you start working, let's tell Bazaar who you are.  Using your name
 
44
and email address, instead of John Doe's, type::
 
45
 
 
46
  $ bzr whoami "John Doe <john.doe@gmail.com>"
 
47
 
 
48
You can check what identity is stored in Bazaar's configuration::
 
49
 
 
50
  $ bzr whoami
 
51
  John Doe <john.doe@gmail.com>
 
52
 
 
53
 
 
54
Starting a new project
 
55
======================
 
56
 
 
57
Let's suppose we want to store a new project under Bazaar.  First, we'll
 
58
make a *repository directory* to hold all our work related to this
 
59
project.  We can then have multiple branch directories under here, and
 
60
they'll all store the committed history in the repository.
 
61
 
 
62
::
 
63
 
 
64
  bzr init-repo sample
 
65
  cd sample
 
66
  bzr init trunk
 
67
  cd trunk
 
68
 
 
69
 
 
70
Making changes to your files
 
71
============================
 
72
 
 
73
Let's change a file and commit that change to your branch.
 
74
 
 
75
Edit ``test1.txt`` in your favourite editor, then check what have you done::
 
76
 
 
77
 $ bzr diff
 
78
 === modified file 'test1.txt'
 
79
 --- test1.txt   2007-10-08 17:56:14 +0000
 
80
 +++ test1.txt   2007-10-08 17:46:22 +0000
 
81
 @@ -0,0 +1,1 @@
 
82
 +test test test
 
83
 
 
84
Commit your work to the Bazaar branch::
 
85
 
 
86
  $ bzr commit -m "Added first line of text"
 
87
  Committed revision 2.
 
88
 
 
89
 
 
90
Viewing the revision log
 
91
========================
 
92
 
 
93
You can see the history of your branch by browsing its log::
 
94
 
 
95
  $ bzr log
 
96
  ------------------------------------------------------------
 
97
  revno: 2
 
98
  committer: John Doe <john.doe@gmail.com>
 
99
  branch nick: myproject
 
100
  timestamp: Mon 2007-10-08 17:56:14 +0000
 
101
  message:
 
102
    Added first line of text
 
103
  ------------------------------------------------------------
 
104
  revno: 1
 
105
  committer: John Doe <john.doe@gmail.com>
 
106
  branch nick: myproject
 
107
  timestamp: Mon 2006-10-08 17:46:22 +0000
 
108
  message:
 
109
    Initial import
 
110
 
 
111
 
 
112
Publishing your branch on Launchpad
 
113
===================================
 
114
 
 
115
Launchpad is a suite of development and hosting tools for
 
116
software projects. You can use it to publish your branch.  (You can 
 
117
also publish branches onto your own server or other hosting services.)
 
118
 
 
119
If you don't have a Launchpad account, follow the `account signup guide`_
 
120
and `register an SSH key`_ in your new Launchpad account.
 
121
 
 
122
.. _account signup guide: https://help.launchpad.net/CreatingYourLaunchpadAccount
 
123
.. _register an SSH key: https://launchpad.net/people/+me/+editsshkeys
 
124
 
 
125
Replacing ``john.doe`` with your own Launchpad username, type::
 
126
 
 
127
 $ bzr push lp:~john.doe/+junk/myproject
 
128
 
 
129
**Note**: ``+junk`` is a place to store experimental branches not
 
130
associated with any particular project.  Normally, you should push a
 
131
project into an existing project, or register a new project through the
 
132
web interface.
 
133
 
 
134
Now, anyone can create their own copy of your branch by typing::
 
135
 
 
136
 $ bzr branch lp:~john.doe/+junk/myproject
 
137
 
 
138
You can also see information about your branch, including its revision
 
139
history, at https://code.launchpad.net/people/+me/+junk/myproject
 
140
 
 
141
 
 
142
Creating your own copy of another branch
 
143
========================================
 
144
 
 
145
To work with someone else's code, you can make your own copy of their
 
146
branch. Let's take a real-world example, Bazaar's GTK interface::
 
147
 
 
148
  $ bzr init-repo ~/bzr-gtk
 
149
  $ bzr branch lp:~bzr/bzr-gtk/trunk ~/bzr-gtk/john
 
150
  Branched 292 revision(s).
 
151
 
 
152
Bazaar will download all the files and complete revision history from the
 
153
bzr-gtk project's trunk branch and create a copy called ``john``.
 
154
 
 
155
Now, you have your own copy of the branch and can commit changes with
 
156
or without a net connection. You can share your branch at any time by
 
157
publishing it and, if the  bzr-gtk team want to use your work, Bazaar
 
158
makes it easy for them to merge your branch back into their trunk branch.
 
159
 
 
160
 
 
161
Updating your branch from the main branch
 
162
=========================================
 
163
 
 
164
While you commit changes to your branch, it's likely that other people will
 
165
also continue to commit code to the parent branch.
 
166
 
 
167
To make sure your branch stays up to date, you should merge changes from
 
168
the parent into your personal branch::
 
169
 
 
170
  $ bzr merge
 
171
  Merging from saved parent location: http://bazaar.launchpad.net/~bzr/bzr-gtk/trunk
 
172
  All changes applied successfully.
 
173
 
 
174
Check what has changed::
 
175
 
 
176
  $ bzr diff
 
177
 
 
178
If different branches have made changes to the same areas of the same
 
179
files, then merging them may generate conflicts.  When this happens,
 
180
Bazaar puts text markers like ``<<<<<<<`` into the files, and records them
 
181
in a list of conflicted files.  You should edit the files to reflect the
 
182
way you want to resolve the conflicts, use ``bzr diff`` to check the
 
183
changes, and then ``bzr resolve`` to mark them as resolved.
 
184
 
 
185
If you're happy with the changes, you can commit them to your personal
 
186
branch::
 
187
 
 
188
  $ bzr commit -m "Merge from main branch"
 
189
  Committed revision 295.
 
190
 
 
191
 
 
192
Learning more
 
193
=============
 
194
 
 
195
You can find out more about Bazaar in the
 
196
`Bazaar User Guide <../user-guide/index.html>`_.
 
197
 
 
198
To learn about Bazaar on the command-line::
 
199
 
 
200
  $ bzr help
 
201
 
 
202
To learn about the ''foo'' topic or command::
 
203
 
 
204
  $ bzr help foo
 
205
 
 
206
Licence
 
207
=======
 
208
 
 
209
Copyright 2007-2011 Canonical Ltd. Bazaar is free software, and you
 
210
may use, modify and redistribute both Bazaar and this document under
 
211
the terms of the GNU General Public License version 2 or later. See
 
212
<http://www.gnu.org/licenses/>.