~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/builtins.py

Merge cleanup into description

Show diffs side-by-side

added added

removed removed

Lines of Context:
2191
2191
    :Tips & tricks:
2192
2192
 
2193
2193
      GUI tools and IDEs are often better at exploring history than command
2194
 
      line tools. You may prefer qlog or glog from the QBzr and Bzr-Gtk packages
2195
 
      respectively for example. (TortoiseBzr uses qlog for displaying logs.) See
2196
 
      http://bazaar-vcs.org/BzrPlugins and http://bazaar-vcs.org/IDEIntegration.
2197
 
 
2198
 
      Web interfaces are often better at exploring history than command line
2199
 
      tools, particularly for branches on servers. You may prefer Loggerhead
2200
 
      or one of its alternatives. See http://bazaar-vcs.org/WebInterface.
 
2194
      line tools: you may prefer qlog or viz from qbzr or bzr-gtk, the
 
2195
      bzr-explorer shell, or the Loggerhead web interface.  See the Plugin
 
2196
      Guide <http://doc.bazaar.canonical.com/plugins/en/> and
 
2197
      <http://wiki.bazaar.canonical.com/IDEIntegration>.  
2201
2198
 
2202
2199
      You may find it useful to add the aliases below to ``bazaar.conf``::
2203
2200
 
2609
2606
    After adding, editing or deleting that file either indirectly by
2610
2607
    using this command or directly by using an editor, be sure to commit
2611
2608
    it.
 
2609
    
 
2610
    Patterns prefixed with '!' are exceptions to ignore patterns and take
 
2611
    precedence over regular ignores.  Such exceptions are used to specify
 
2612
    files that should be versioned which would otherwise be ignored.
 
2613
    
 
2614
    Patterns prefixed with '!!' act as regular ignore patterns, but have
 
2615
    precedence over the '!' exception patterns.
2612
2616
 
2613
2617
    Note: ignore patterns containing shell wildcards must be quoted from
2614
2618
    the shell on Unix.
2618
2622
 
2619
2623
            bzr ignore ./Makefile
2620
2624
 
2621
 
        Ignore class files in all directories::
 
2625
        Ignore .class files in all directories...::
2622
2626
 
2623
2627
            bzr ignore "*.class"
2624
2628
 
 
2629
        ...but do not ignore "special.class"::
 
2630
 
 
2631
            bzr ignore "!special.class"
 
2632
 
2625
2633
        Ignore .o files under the lib directory::
2626
2634
 
2627
2635
            bzr ignore "lib/**/*.o"
2633
2641
        Ignore everything but the "debian" toplevel directory::
2634
2642
 
2635
2643
            bzr ignore "RE:(?!debian/).*"
 
2644
        
 
2645
        Ignore everything except the "local" toplevel directory,
 
2646
        but always ignore "*~" autosave files, even under local/::
 
2647
        
 
2648
            bzr ignore "*"
 
2649
            bzr ignore "!./local"
 
2650
            bzr ignore "!!*~"
2636
2651
    """
2637
2652
 
2638
2653
    _see_also = ['status', 'ignored', 'patterns']
3647
3662
    committed to record the result of the merge.
3648
3663
 
3649
3664
    merge refuses to run if there are any uncommitted changes, unless
3650
 
    --force is given.
 
3665
    --force is given. The --force option can also be used to create a
 
3666
    merge revision which has more than two parents.
 
3667
 
 
3668
    If one would like to merge changes from the working tree of the other
 
3669
    branch without merging any committed revisions, the --uncommitted option
 
3670
    can be given.
3651
3671
 
3652
3672
    To select only some changes to merge, use "merge -i", which will prompt
3653
3673
    you to apply each diff hunk and file change, similar to "shelve".
3668
3688
        To apply a merge directive contained in /tmp/merge::
3669
3689
 
3670
3690
            bzr merge /tmp/merge
 
3691
 
 
3692
        To create a merge revision with three parents from two branches
 
3693
        feature1a and feature1b:
 
3694
 
 
3695
            bzr merge ../feature1a
 
3696
            bzr merge ../feature1b --force
 
3697
            bzr commit -m 'revision with three parents'
3671
3698
    """
3672
3699
 
3673
3700
    encoding_type = 'exact'
4083
4110
    created as above.  Directories containing unknown files will not be
4084
4111
    deleted.
4085
4112
 
4086
 
    The working tree contains a list of pending merged revisions, which will
4087
 
    be included as parents in the next commit.  Normally, revert clears that
4088
 
    list as well as reverting the files.  If any files are specified, revert
4089
 
    leaves the pending merge list alone and reverts only the files.  Use "bzr
4090
 
    revert ." in the tree root to revert all files but keep the merge record,
4091
 
    and "bzr revert --forget-merges" to clear the pending merge list without
 
4113
    The working tree contains a list of revisions that have been merged but
 
4114
    not yet committed. These revisions will be included as additional parents
 
4115
    of the next commit.  Normally, using revert clears that list as well as
 
4116
    reverting the files.  If any files are specified, revert leaves the list
 
4117
    of uncommitted merges alone and reverts only the files.  Use ``bzr revert
 
4118
    .`` in the tree root to revert all files but keep the recorded merges,
 
4119
    and ``bzr revert --forget-merges`` to clear the pending merge list without
4092
4120
    reverting any files.
4093
4121
 
4094
 
    Using "bzr revert --forget-merges", it is possible to apply the changes
4095
 
    from an arbitrary merge as a single revision.  To do this, perform the
4096
 
    merge as desired.  Then doing revert with the "--forget-merges" option will
4097
 
    keep the content of the tree as it was, but it will clear the list of
4098
 
    pending merges.  The next commit will then contain all of the changes that
4099
 
    would have been in the merge, but without any mention of the other parent
4100
 
    revisions.  Because this technique forgets where these changes originated,
4101
 
    it may cause additional conflicts on later merges involving the source and
 
4122
    Using "bzr revert --forget-merges", it is possible to apply all of the
 
4123
    changes from a branch in a single revision.  To do this, perform the merge
 
4124
    as desired.  Then doing revert with the "--forget-merges" option will keep
 
4125
    the content of the tree as it was, but it will clear the list of pending
 
4126
    merges.  The next commit will then contain all of the changes that are
 
4127
    present in the other branch, but without any other parent revisions.
 
4128
    Because this technique forgets where these changes originated, it may
 
4129
    cause additional conflicts on later merges involving the same source and
4102
4130
    target branches.
4103
4131
    """
4104
4132
 
4377
4405
    adding new commands, providing additional network transports and
4378
4406
    customizing log output.
4379
4407
 
4380
 
    See the Bazaar web site, http://bazaar-vcs.org, for further
4381
 
    information on plugins including where to find them and how to
4382
 
    install them. Instructions are also provided there on how to
4383
 
    write new plugins using the Python programming language.
 
4408
    See the Bazaar Plugin Guide <http://doc.bazaar.canonical.com/plugins/en/>
 
4409
    for further information on plugins including where to find them and how to
 
4410
    install them. Instructions are also provided there on how to write new
 
4411
    plugins using the Python programming language.
4384
4412
    """
4385
4413
    takes_options = ['verbose']
4386
4414