doc/evolve-tutorial.rst
author Pierre-Yves David <pierre-yves.david@logilab.fr>
Tue, 20 Mar 2012 15:18:29 +0100
changeset 152 54c67d7f9eed
child 156 3c4826fb374a
permissions -rw-r--r--
very cruse evolve tutorial
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
152
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
     1
========================================
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
     2
Introduction to the evolution extension
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
     3
========================================
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
     4
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
     5
An history rewriting extension
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
     6
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
     7
* Using the obsolete marker concept
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
     8
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
     9
* Inspired from mq
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    10
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    11
it is simple to enable::
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    12
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    13
    $ hg clone http://hg-dev.octopoid.net/hgwebdir.cgi/mutable-history/
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    14
    $ mutable-history/enable.sh > ~/.hgrc
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    15
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    16
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    17
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    18
Quick Guide
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    19
=====================================================================
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    20
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    21
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    22
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    23
Add a changeset: ``commit``
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    24
------------------------------------------------------------
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    25
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    26
Just use commit as usual.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    27
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    28
Rewrite a changeset: ``amend``
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    29
------------------------------------------------------------
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    30
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    31
A new command ``hg amend`` is added by the extension. it write a new changeset
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    32
combining working-directory parent changes and working directory parent changes.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    33
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    34
To understand what the result of amend will be I do use the two following
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    35
aliases  [#]_::
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    36
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    37
    # diff what amend will look likes
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    38
    pdiff=diff --rev .^
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    39
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    40
    # status what amend will look likes
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    41
    pstatus=status --rev .^
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    42
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    43
It take various options to choose the user, the date and the branch of the
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    44
result. see ``hg help amend for detail``
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    45
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    46
This command can be invoqued on any mutable changeset even changeset with
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    47
children !
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    48
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    49
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    50
.. note:: the amend command is very similar to mq's ``qrefresh``, a ``refresh``
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    51
          alias for amend is also available. But note that contrary to
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    52
          ``qrefresh``, ``amend`` does not exclude changes on file not specified
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    53
          on the command line.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    54
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    55
          XXX add idank example
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    56
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    57
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    58
.. [#] (added by enable.sh)
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    59
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    60
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    61
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    62
Move a changeset: ``graft``
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    63
------------------------------------------------------------
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    64
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    65
the graft command introduced in 2.0 allows to "copy changes from other branches
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    66
onto the current branch"
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    67
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    68
The graft command have been altered to be able to create an obsolete marker from
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    69
the copy result to the copy source, acting like changeset movement operation.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    70
This is achieved using a new flag `-O` (or `old-obsolete`) [#]_.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    71
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    72
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    73
XXX example
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    74
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    75
.. warning:: when using graft --continue after conflict resolution you **MUST**
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    76
             pass `-O` or `-o` flag again because they are not saved for now
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    77
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    78
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    79
.. [#] add this `-O` to graft instead of a dedicated command is probably
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    80
       abusive. But this was very convenient for experimental purpose.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    81
       This will likely change in non experimental release.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    82
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    83
Delete a changeset: ``kill``
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    84
------------------------------------------------------------
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    85
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    86
A new ``kill`` command allow to remove a changeset.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    87
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    88
Just use ``hg kill <some-rev>``.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    89
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    90
Moving within the history: ``up`` ``gdown`` and ``gup``
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    91
------------------------------------------------------------
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    92
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    93
While working on mutable part of the history you often need to move between
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    94
mutable commit.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    95
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    96
You just need to use standard update to work with evolve. For convenience, you
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    97
can use ``hg gup`` to move to children commit or ``hg gdown`` to move to working
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    98
directory parent commit.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
    99
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   100
.. note:: those command only exist for the convenience of getting qpush and qpop
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   101
          feeling back.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   102
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   103
          They are 
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   104
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   105
collapse changesets: ``amend``
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   106
------------------------------------------------------------
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   107
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   108
you can use amend -c to collapse multiple changeset in a single one.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   109
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   110
Move multiple changesets: ``rebase``
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   111
------------------------------------------------------------
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   112
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   113
You can still use rebase to move whole part of the changeset graph at once.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   114
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   115
.. warning:: Beware that rebasing obsolete changeset will result in new
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   116
             conflicting version.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   117
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   118
Stabilize history: ``stabilize``
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   119
------------------------------------------------------------
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   120
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   121
When you rewrite changeset with children without rewriting those children you
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   122
create *unstable* changeset and *suspended obsolete* changeset
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   123
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   124
.. warning:: ``hg stabilize`` have no --continue to use after conflict
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   125
             resolution
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   126
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   127
.. warning:: stabilization does not handle deletion yet.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   128
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   129
.. warning:: obsolete currently rely on secret changeset to not exchange
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   130
             obsolete and unstable changeset.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   131
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   132
             XXX details issue here
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   133
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   134
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   135
Fix my history afterward: ``kill -n``
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   136
------------------------------------------------------------
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   137
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   138
sometime you need to create obsolete marker by hand. This may happen when
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   139
upstream applied some of you patches for example.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   140
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   141
you can use ``hg kill --new <new-changeset> <old-changeset>`` to add obsolete
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   142
marker.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   143
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   144
export to mq: ``synchronize``
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   145
------------------------------------------------------------
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   146
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   147
Another extension allows to export 
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   148
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   149
view change to your file
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   150
------------------------------------------------------------
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   151
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   152
Another extension allows to export 
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   153
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   154
view diff from the last amend
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   155
------------------------------------------------------------
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   156
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   157
an odiff alias have been added by enable.sh
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   158
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   159
:: 
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   160
    [alias]
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   161
    odiff = diff --rev 'limit(obsparents(.),1)' --rev .
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   162
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   163
view obsolete marker
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   164
------------------------------------------------------------
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   165
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   166
hgview is the only viewer that support this feature. you need an experimental
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   167
version available here:
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   168
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   169
    $ hg clone http://hg-dev.octopoid.net/hgwebdir.cgi/hgview/
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   170
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   171
Important Note
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   172
=====================================================================
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   173
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   174
view change to your file
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   175
------------------------------------------------------------
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   176
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   177
extinct changeset are hidden using the *hidden* feature of mercurial.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   178
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   179
only hg log and hgview support it. hg glog or other visual viewer don't.
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   180
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   181
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   182
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   183
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   184
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   185
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   186
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   187
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   188
54c67d7f9eed very cruse evolve tutorial
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
   189