tests/test-tutorial.t
branchstable
changeset 662 40854e956315
parent 654 c56109c9aebf
child 688 f2c3fd21fa63
equal deleted inserted replaced
648:f727ebe6ffd5 662:40854e956315
    38   > [ui]
    38   > [ui]
    39   > user = Princess Flore
    39   > user = Princess Flore
    40   > EOF
    40   > EOF
    41 
    41 
    42 
    42 
    43 This tutorial use the following configuration for Mercurial:
    43 This tutorial uses the following configuration for Mercurial:
    44 
    44 
    45 A compact log template with phase data:
    45 A compact log template with phase data:
    46 
    46 
    47   $ hg showconfig ui
    47   $ hg showconfig ui
    48   ui.slash=True
    48   ui.slash=True
   141    Oil
   141    Oil
   142   +Bananos
   142   +Bananos
   143   +Pear
   143   +Pear
   144   +Apple
   144   +Apple
   145 
   145 
   146 The faulty changeset is in the "draft" phase because he was not exchanged with
   146 The faulty changeset is in the "draft" phase because it has not been exchanged with
   147 the outside. The first one have been exchanged and is an immutable public
   147 the outside. The first one has been exchanged and is "public" (immutable).
   148 changeset.
       
   149 
   148 
   150   $ hg log -G
   149   $ hg log -G
   151   @  d85de4546133 (draft): adding fruit
   150   @  d85de4546133 (draft): adding fruit
   152   |
   151   |
   153   o  4d5dc8187023 (draft): adding condiment
   152   o  4d5dc8187023 (draft): adding condiment
   198    Oil
   197    Oil
   199   +Banana
   198   +Banana
   200   +Pear
   199   +Pear
   201   +Apple
   200   +Apple
   202 
   201 
   203 Getting Ride of branchy history
   202 Getting rid of branchy history
   204 ----------------------------------
   203 ----------------------------------
   205 
   204 
   206 While I was working on my list. someone help made a change remotly.
   205 While I was working on my list. someone help made a change remotly.
   207 
   206 
   208   $ cd ../remote
   207   $ cd ../remote
   218   searching for changes
   217   searching for changes
   219   adding changesets
   218   adding changesets
   220   adding manifests
   219   adding manifests
   221   adding file changes
   220   adding file changes
   222   added 1 changesets with 1 changes to 1 files (+1 heads)
   221   added 1 changesets with 1 changes to 1 files (+1 heads)
   223   (run 'hg heads .' to see heads, 'hg merge' to merge)
   222   (run 'hg heads' to see heads, 'hg merge' to merge)
   224 
   223 
   225 I now have a new heads. Note that this remote head is immutable
   224 I now have a new heads. Note that this remote head is immutable
   226 
   225 
   227   $ hg log -G
   226   $ hg log -G
   228   o  9ca060c80d74 (public): SPAM
   227   o  9ca060c80d74 (public): SPAM
   252   o  9ca060c80d74 (public): SPAM
   251   o  9ca060c80d74 (public): SPAM
   253   |
   252   |
   254   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   253   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   255   
   254   
   256 
   255 
   257 Removing changeset
   256 Removing changesets
   258 ------------------------
   257 ------------------------
   259 
   258 
   260 I add new item to my list
   259 I add new item to my list
   261 
   260 
   262   $ cat >> shopping << EOF
   261   $ cat >> shopping << EOF
   295   o  9ca060c80d74 (public): SPAM
   294   o  9ca060c80d74 (public): SPAM
   296   |
   295   |
   297   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   296   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   298   
   297   
   299 
   298 
   300 Reordering changeset
   299 Reordering changesets
   301 ------------------------
   300 ------------------------
   302 
   301 
   303 
   302 
   304 We create two changesets.
   303 We create two changesets.
   305 
   304 
   329   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   328   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   330   
   329   
   331 
   330 
   332 .. note: We can't amend changeset 7e82d3f3c2cb or 9ca060c80d74 as they are immutable.
   331 .. note: We can't amend changeset 7e82d3f3c2cb or 9ca060c80d74 as they are immutable.
   333 
   332 
   334 I now want to push to remote all my change but the bathroom one that i'm not
   333 I now want to push to remote all my changes except the bathroom one, which I'm not
   335 totally happy with yet. To be able to push "SPAM SPAM" I need a version of "SPAM SPAM" not children of
   334 totally happy with yet. To be able to push "SPAM SPAM" I need a version of "SPAM SPAM" which is not a child of
   336 "bathroom stuff"
   335 "bathroom stuff"
   337 
   336 
   338 You can use 'rebase -r' or 'graft -O' for that:
   337 You can use 'rebase -r' or 'graft -O' for that:
   339 
   338 
   340   $ hg up 'p1(10b8aeaa8cc8)' # going on "bathroom stuff" parent
   339   $ hg up 'p1(10b8aeaa8cc8)' # going on "bathroom stuff" parent
   435 
   434 
   436 
   435 
   437 sharing mutable changeset
   436 sharing mutable changeset
   438 ----------------------------
   437 ----------------------------
   439 
   438 
   440 To share mutable changeset with other just check that the repo you interact
   439 To share mutable changeset with others, just check that the repo you interact
   441 with is "not publishing". Otherwise you will get the previously observe
   440 with is "not publishing". Otherwise you will get the previously observe
   442 behavior where exchanged changeset are automatically published.
   441 behavior where exchanged changeset are automatically published.
   443 
   442 
   444   $ cd ../remote
   443   $ cd ../remote
   445   $ hg -R ../local/ showconfig phases
   444   $ hg -R ../local/ showconfig phases
   566   searching for changes
   565   searching for changes
   567   adding changesets
   566   adding changesets
   568   adding manifests
   567   adding manifests
   569   adding file changes
   568   adding file changes
   570   added 1 changesets with 1 changes to 1 files (+1 heads)
   569   added 1 changesets with 1 changes to 1 files (+1 heads)
   571   (run 'hg heads .' to see heads, 'hg merge' to merge)
   570   (run 'hg heads' to see heads, 'hg merge' to merge)
   572   1 new unstable changesets
   571   1 new unstable changesets
   573 
   572 
   574 
   573 
   575 The new changeset "animal" is based one an old changeset of "bathroom". You can
   574 The new changeset "animal" is based on an old changeset of "bathroom". You can
   576 see both version showing up in the log.
   575 see both version showing up in the log.
   577 
   576 
   578   $ hg log -G
   577   $ hg log -G
   579   o  bf1b0d202029 (draft): animals
   578   o  bf1b0d202029 (draft): animals
   580   |
   579   |
   592   |
   591   |
   593   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   592   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   594   
   593   
   595 
   594 
   596 The older version 75954b8cd933 never ceased to exist in the local repo. It was
   595 The older version 75954b8cd933 never ceased to exist in the local repo. It was
   597 jsut hidden and excluded from pull and push.
   596 just hidden and excluded from pull and push.
   598 
   597 
   599 .. note:: In hgview there is a nice doted relation highlighting a44c85f957d3 as a new version of 75954b8cd933. this is not yet ported to graphlog.
   598 .. note:: In hgview there is a nice dotted relation highlighting a44c85f957d3 as a new version of 75954b8cd933. this is not yet ported to ``hg log -G``.
   600 
   599 
   601 Their is **unstable** changeset in this history now. Mercurial will refuse to
   600 There is now an **unstable** changeset in this history. Mercurial will refuse to
   602 share it with the outside:
   601 share it with the outside:
   603 
   602 
   604   $ hg push other
   603   $ hg push other
   605   pushing to $TESTTMP/other
   604   pushing to $TESTTMP/other
   606   searching for changes
   605   searching for changes
   610  
   609  
   611 
   610 
   612 
   611 
   613 
   612 
   614 To resolve this unstable state, you need to rebase bf1b0d202029 onto
   613 To resolve this unstable state, you need to rebase bf1b0d202029 onto
   615 a44c85f957d3 the "hg evolve" command will make this for you.
   614 a44c85f957d3. The "hg evolve" command will do this for you.
   616 
   615 
   617 It has a --dry-run option to only suggest the next move.
   616 It has a --dry-run option to only suggest the next move.
   618 
   617 
   619   $ hg evolve --dry-run
   618   $ hg evolve --dry-run
   620   move:[15] animals
   619   move:[15] animals
   761 
   760 
   762 
   761 
   763 Handling Conflicting amend
   762 Handling Conflicting amend
   764 ----------------------------------------------
   763 ----------------------------------------------
   765 
   764 
   766 We can detect that multiple diverging//conflicting amend have been made.
   765 We can detect that multiple diverging/conflicting amendments have been made. There
   767 hg evolve is able to solve several of them
   766 will be a "evol-merge" command to merge conflicting amendments.
   768 
   767 
   769 This section need to be written
   768 This section needs to be written.