/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/merging_changes.txt

  • Committer: Marius Kruger
  • Date: 2010-07-10 21:28:56 UTC
  • mto: (5384.1.1 integration)
  • mto: This revision was merged to the branch mainline in revision 5385.
  • Revision ID: marius.kruger@enerweb.co.za-20100710212856-uq4ji3go0u5se7hx
* Update documentation
* add NEWS

Show diffs side-by-side

added added

removed removed

Lines of Context:
16
16
To incorporate changes from another branch, use the ``merge`` command.
17
17
Its syntax is::
18
18
 
19
 
  brz merge [URL]
 
19
  bzr merge [URL]
20
20
 
21
21
If no URL is given, a default is used, initially the branch this branch
22
22
originated from.
23
23
For example, if Bill made a branch from Mary's work, he can merge her
24
24
subsequent changes by simply typing this::
25
25
 
26
 
  brz merge
 
26
  bzr merge
27
27
 
28
28
On the other hand, Mary might want to merge into her branch the work Bill
29
29
has done in his. In this case, she needs to explicitly give the URL the
30
30
first time, e.g.::
31
31
 
32
 
  brz merge bzr+ssh://mary@bill-laptop/cool-repo/cool-trunk
 
32
  bzr merge sftp://mary@bill-laptop/cool-repo/cool-trunk
33
33
 
34
 
This sets the default merge branch if one is not already set.  Use
35
 
``--no-remember`` to avoid setting it. To change the default after it is set,
36
 
use the ``--remember`` option.
 
34
This sets the default merge branch if one is not already set. To change the
 
35
default after it is set, use the ``--remember`` option.
37
36
 
38
37
How does merging work?
39
38
----------------------
40
39
 
41
 
A variety of algorithms exist for merging changes. Breezy's
 
40
A variety of algorithms exist for merging changes. Bazaar's
42
41
default algorithm is a variation of *3-way merging* which
43
42
works as follows. Given an ancestor A and two branches B and C,
44
43
the following table provides the rules used.
62
61
After any conflicts are resolved, the merge needs to be committed.
63
62
For example::
64
63
 
65
 
  brz commit -m "Merged Mary's changes"
 
64
  bzr commit -m "Merged Mary's changes"
66
65
 
67
66
Even if there are no conflicts, an explicit commit is still required.
68
 
Unlike some other tools, this is considered a feature in Breezy.
 
67
Unlike some other tools, this is considered a feature in Bazaar.
69
68
A clean merge is not necessarily a good merge so making the commit
70
69
a separate explicit step allows you to run your test suite first to
71
70
verify all is good. If problems are found, you should correct them
74
73
Merge tracking
75
74
--------------
76
75
 
77
 
One of the most important features of Breezy is distributed,
 
76
One of the most important features of Bazaar is distributed,
78
77
high quality *merge tracking*.
79
 
In other words, Breezy remembers what has been merged already and
 
78
In other words, Bazaar remembers what has been merged already and
80
79
uses that information to intelligently choose the best ancestor for
81
80
a merge, minimizing the number and size of conflicts.
82
81
 
83
82
If you are a refugee from many other VCS tools, it can be really
84
83
hard to "unlearn" the *please-let-me-avoid-merging-at-any-cost* habit.
85
 
Breezy lets you safely merge as often as you like with other people.
 
84
Bazaar lets you safely merge as often as you like with other people.
86
85
By working in a peer-to-peer manner when it makes sense to do so, you
87
86
also avoid using a central branch as an "integration swamp", keeping
88
87
its quality higher. When the change you're collaborating on is