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

  • Committer: Xavier Maillard
  • Date: 2008-03-26 06:21:48 UTC
  • mto: (3322.1.1 ianc-integration)
  • mto: This revision was merged to the branch mainline in revision 3323.
  • Revision ID: xma@gnu.org-20080326062148-f7mnwvttv4oq8013
Add mail-mode GNU Emacs mail package as a mail_client option.
    
Idea and original code by Bojan Nikolic modified in this way:
    
1. define a different python class EmacsMailMode
2. use mail-mode package instead of message-mode. mail-mode is the
   default mail mode in GNU Emacs.
3. put the patch as a MIME attachment (see NOTE)
4. add tests as required to fulfil merge strategy requirements
    
To use this option, just put these lines into ~/.bazaar/bazaar.conf
    
[DEFAULT]
mail_client = emacs-mailmode

NOTE: this will work only for GNU Emacs version from 22.1 and superior.
      The MIME attachment is handled by etach[1] package. Just put
      etach.el into your `load-path'. GNU Emacs is not shipped with a
      simple MIME package thus the need of a simple and reliable
      alternative (etach does both reading and writing of MIME objects).

[1] http://rulnick.com/etach/download

Show diffs side-by-side

added added

removed removed

Lines of Context:
47
47
be done at a later time. In other cases, additional conflicts will need
48
48
to be resolved when the changes are merged again.
49
49
 
50
 
Merging without parents
51
 
-----------------------
52
 
 
53
 
A related technique to cherrypicking, in that it makes changes without
54
 
reference to the revisions that they came from is to perform a merge, but
55
 
forget about the parent revisions before committing.  This has the effect of
56
 
making all of the changes that would have been in the merge happen in a single
57
 
commit.  After the merge and before the corresponding commit, you can do::
58
 
 
59
 
  bzr revert --forget-merges
60
 
 
61
 
to keep the changes in the working tree, but remove the record of the
62
 
revisions where the changes originated.  The next commit would then record
63
 
all of those changes without any record of the merged revisions.
64
 
 
65
 
This is desired by some users to make their history "cleaner", but you should
66
 
be careful that the loss of history does not outweigh the value of cleanliness,
67
 
particularly given Bazaar's capabilities for progressively disclosing merged
68
 
revisions.  In particular, because this will include the changes from the
69
 
source branch, but without attribution to that branch, it can lead to
70
 
additional conflicts on later merges that involve the same source and
71
 
target branches.
72
 
 
73
50
 
74
51
Reverse cherrypicking
75
52
---------------------
87
64
Merging uncommitted changes
88
65
---------------------------
89
66
 
90
 
If you have several branches and you accidentally start making changes in the
 
67
If you have several branches and you accidently start making changes in the
91
68
wrong one, here are the steps to take to correct this. Assuming you began
92
69
working in branch ``foo`` when you meant to work in branch ``bar``:
93
70