tests/test-tutorial.t
author Pierre-Yves David <pierre-yves.david@fb.com>
Fri, 15 Aug 2014 00:46:23 -0700
changeset 1058 00bc31523074
parent 1040 640f3280559e
child 1064 95d84c8b4bcc
permissions -rw-r--r--
uncommit: add a --rev argument The uncommit command now taks a --rev argument. This lets restore the file content in the current commit to another revision (instead of just is parent content). This still does not touch the working directory content.\ This allow the longly awaited: hg uncommit --hidden --rev 'precursors(.)'
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
     1
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
     2
Initial setup
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
     3
-------------
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
     4
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
     5
This Mercurial configuration example is used for testing.
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
     6
.. Various setup
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
     7
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
     8
  $ cat >> $HGRCPATH << EOF
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
     9
  > [ui]
766
32936a9f4389 doc: some documentation on the configuration part of the tutorial
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 750
diff changeset
    10
  > # This is change the default output of log for clear tutorial
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    11
  > logtemplate ="{node|short} ({phase}): {desc}\n"
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    12
  > [diff]
766
32936a9f4389 doc: some documentation on the configuration part of the tutorial
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 750
diff changeset
    13
  > # use "git" diff format, clearer and smarter format
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    14
  > git = 1
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    15
  > [alias]
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    16
  > # "-d '0 0'" means that the new commit will be at January 1st 1970.
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    17
  > # This is used for stable hash during test
766
32936a9f4389 doc: some documentation on the configuration part of the tutorial
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 750
diff changeset
    18
  > # (this tutorial is automatically tested.)
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    19
  > amend = amend -d '0 0'
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    20
  > EOF
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    21
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    22
  $ hg init local
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    23
  $ cat >> local/.hg/hgrc << EOF
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    24
  > [paths]
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    25
  > remote = ../remote
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    26
  > other = ../other
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    27
  > [ui]
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    28
  > user = Babar the King
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    29
  > EOF
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    30
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    31
  $ hg init remote
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    32
  $ cat >> remote/.hg/hgrc << EOF
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    33
  > [paths]
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    34
  > local = ../local
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    35
  > [ui]
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    36
  > user = Celestine the Queen
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    37
  > EOF
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    38
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    39
  $ hg init other
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    40
  $ cat >> other/.hg/hgrc << EOF
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    41
  > [ui]
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    42
  > user = Princess Flore
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    43
  > EOF
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    44
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    45
654
c56109c9aebf tutorial: fix grammar, spelling, punctuation
Greg Ward <greg@gerg.ca>
parents: 652
diff changeset
    46
This tutorial uses the following configuration for Mercurial:
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    47
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    48
A compact log template with phase data:
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    49
766
32936a9f4389 doc: some documentation on the configuration part of the tutorial
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 750
diff changeset
    50
  $ hg showconfig ui | grep log
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    51
  ui.logtemplate="{node|short} ({phase}): {desc}\n"
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    52
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    53
Improved git format diff:
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    54
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    55
  $ hg showconfig diff
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    56
  diff.git=1
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    57
508
d1c658a6d0bc test-tutorial: stop using enable.sh, removed by 53d7e3413337
Patrick Mezard <patrick@mezard.eu>
parents: 492
diff changeset
    58
And of course, we enable the experimental extensions for mutable history:
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    59
508
d1c658a6d0bc test-tutorial: stop using enable.sh, removed by 53d7e3413337
Patrick Mezard <patrick@mezard.eu>
parents: 492
diff changeset
    60
  $ cat >> $HGRCPATH <<EOF
d1c658a6d0bc test-tutorial: stop using enable.sh, removed by 53d7e3413337
Patrick Mezard <patrick@mezard.eu>
parents: 492
diff changeset
    61
  > [extensions]
766
32936a9f4389 doc: some documentation on the configuration part of the tutorial
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 750
diff changeset
    62
  > evolve = $TESTDIR/../hgext/evolve.py
32936a9f4389 doc: some documentation on the configuration part of the tutorial
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 750
diff changeset
    63
  > # enabling rebase is also needed for now
508
d1c658a6d0bc test-tutorial: stop using enable.sh, removed by 53d7e3413337
Patrick Mezard <patrick@mezard.eu>
parents: 492
diff changeset
    64
  > rebase =
d1c658a6d0bc test-tutorial: stop using enable.sh, removed by 53d7e3413337
Patrick Mezard <patrick@mezard.eu>
parents: 492
diff changeset
    65
  > EOF
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    66
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    67
-----------------------
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    68
Single Developer Usage
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    69
-----------------------
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    70
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    71
This tutorial shows how to use evolution to rewrite history locally.
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    72
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    73
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    74
Fixing mistake with `hg amend`
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    75
--------------------------------
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    76
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    77
We are versionning a shopping list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    78
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    79
  $ cd local
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    80
  $ cat  >> shopping << EOF
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    81
  > Spam
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    82
  > Whizzo butter
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    83
  > Albatross
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    84
  > Rat (rather a lot)
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    85
  > Jugged fish
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    86
  > Blancmange
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    87
  > Salmon mousse
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    88
  > EOF
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    89
  $ hg commit -A -m "Monthy Python Shopping list"
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    90
  adding shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    91
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    92
Its first version is shared with the outside.
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    93
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    94
  $ hg push remote
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    95
  pushing to $TESTTMP/remote
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    96
  searching for changes
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    97
  adding changesets
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    98
  adding manifests
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
    99
  adding file changes
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   100
  added 1 changesets with 1 changes to 1 files
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   101
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   102
Later I add additional item to my list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   103
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   104
  $ cat >> shopping << EOF
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   105
  > Egg
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   106
  > Suggar
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   107
  > Vinegar
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   108
  > Oil
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   109
  > EOF
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   110
  $ hg commit -m "adding condiment"
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   111
  $ cat >> shopping << EOF
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   112
  > Bananos
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   113
  > Pear
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   114
  > Apple
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   115
  > EOF
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   116
  $ hg commit -m "adding fruit"
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   117
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   118
This history is very linear
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   119
634
e763f7e94211 tutorial: glog is into core now
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 590
diff changeset
   120
  $ hg log -G
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   121
  @  d85de4546133 (draft): adding fruit
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   122
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   123
  o  4d5dc8187023 (draft): adding condiment
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   124
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   125
  o  7e82d3f3c2cb (public): Monthy Python Shopping list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   126
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   127
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   128
But a typo was made in Babanas!
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   129
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   130
  $ hg export tip
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   131
  # HG changeset patch
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   132
  # User test
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   133
  # Date 0 0
726
06cd220141ba Adapt to human readable date in patch
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 696
diff changeset
   134
  #      Thu Jan 01 00:00:00 1970 +0000
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   135
  # Node ID d85de4546133030c82d257bbcdd9b1b416d0c31c
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   136
  # Parent  4d5dc81870237d492284826e21840b2ca00e26d1
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   137
  adding fruit
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   138
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   139
  diff --git a/shopping b/shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   140
  --- a/shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   141
  +++ b/shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   142
  @@ -9,3 +9,6 @@
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   143
   Suggar
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   144
   Vinegar
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   145
   Oil
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   146
  +Bananos
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   147
  +Pear
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   148
  +Apple
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   149
654
c56109c9aebf tutorial: fix grammar, spelling, punctuation
Greg Ward <greg@gerg.ca>
parents: 652
diff changeset
   150
The faulty changeset is in the "draft" phase because it has not been exchanged with
c56109c9aebf tutorial: fix grammar, spelling, punctuation
Greg Ward <greg@gerg.ca>
parents: 652
diff changeset
   151
the outside. The first one has been exchanged and is "public" (immutable).
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   152
634
e763f7e94211 tutorial: glog is into core now
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 590
diff changeset
   153
  $ hg log -G
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   154
  @  d85de4546133 (draft): adding fruit
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   155
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   156
  o  4d5dc8187023 (draft): adding condiment
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   157
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   158
  o  7e82d3f3c2cb (public): Monthy Python Shopping list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   159
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   160
634
e763f7e94211 tutorial: glog is into core now
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 590
diff changeset
   161
hopefully. I can use `hg commit --amend` to rewrite my faulty changeset!
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   162
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   163
  $ sed -i'' -e s/Bananos/Banana/ shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   164
  $ hg diff
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   165
  diff --git a/shopping b/shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   166
  --- a/shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   167
  +++ b/shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   168
  @@ -9,6 +9,6 @@
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   169
   Suggar
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   170
   Vinegar
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   171
   Oil
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   172
  -Bananos
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   173
  +Banana
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   174
   Pear
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   175
   Apple
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   176
  $ hg commit --amend
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   177
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   178
A new changeset with the right diff replace the wrong one.
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   179
634
e763f7e94211 tutorial: glog is into core now
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 590
diff changeset
   180
  $ hg log -G
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   181
  @  9d0363b81950 (draft): adding fruit
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   182
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   183
  o  4d5dc8187023 (draft): adding condiment
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   184
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   185
  o  7e82d3f3c2cb (public): Monthy Python Shopping list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   186
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   187
  $ hg export tip
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   188
  # HG changeset patch
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   189
  # User test
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   190
  # Date 0 0
726
06cd220141ba Adapt to human readable date in patch
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 696
diff changeset
   191
  #      Thu Jan 01 00:00:00 1970 +0000
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   192
  # Node ID 9d0363b81950646bc6ad1ec5de8b8197ea586541
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   193
  # Parent  4d5dc81870237d492284826e21840b2ca00e26d1
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   194
  adding fruit
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   195
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   196
  diff --git a/shopping b/shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   197
  --- a/shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   198
  +++ b/shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   199
  @@ -9,3 +9,6 @@
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   200
   Suggar
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   201
   Vinegar
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   202
   Oil
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   203
  +Banana
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   204
  +Pear
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   205
  +Apple
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   206
654
c56109c9aebf tutorial: fix grammar, spelling, punctuation
Greg Ward <greg@gerg.ca>
parents: 652
diff changeset
   207
Getting rid of branchy history
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   208
----------------------------------
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   209
768
b116de5dc70d tutorial: fix some various typo
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 767
diff changeset
   210
While I was working on my list. someone made a change remotly.
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   211
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   212
  $ cd ../remote
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   213
  $ hg up -q
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   214
  $ sed -i'' -e 's/Spam/Spam Spam Spam/' shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   215
  $ hg ci -m 'SPAM'
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   216
  $ cd ../local
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   217
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   218
I'll get this remote changeset when pulling
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   219
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   220
  $ hg pull remote
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   221
  pulling from $TESTTMP/remote
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   222
  searching for changes
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   223
  adding changesets
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   224
  adding manifests
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   225
  adding file changes
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   226
  added 1 changesets with 1 changes to 1 files (+1 heads)
1038
45c4739e85dc evolve: make the "pulling obsolescence marker" message important
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1037
diff changeset
   227
  pull obsolescence markers
625
e291e5271694 prepare for Full scale filtering !!!
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 590
diff changeset
   228
  (run 'hg heads' to see heads, 'hg merge' to merge)
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   229
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   230
I now have a new heads. Note that this remote head is immutable
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   231
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   232
  $ hg log -G
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   233
  o  9ca060c80d74 (public): SPAM
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   234
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   235
  | @  9d0363b81950 (draft): adding fruit
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   236
  | |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   237
  | o  4d5dc8187023 (draft): adding condiment
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   238
  |/
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   239
  o  7e82d3f3c2cb (public): Monthy Python Shopping list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   240
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   241
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   242
instead of merging my head with the new one. I'm going to rebase my work
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   243
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   244
  $ hg diff
769
e2a463e1e7c8 tutorial: use long form of argument for the sake of clarity
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 768
diff changeset
   245
  $ hg rebase --dest 9ca060c80d74 --source 4d5dc8187023
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   246
  merging shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   247
  merging shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   248
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   249
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   250
My local work is now rebased on the remote one.
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   251
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   252
  $ hg log -G
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   253
  @  41aff6a42b75 (draft): adding fruit
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   254
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   255
  o  dfd3a2d7691e (draft): adding condiment
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   256
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   257
  o  9ca060c80d74 (public): SPAM
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   258
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   259
  o  7e82d3f3c2cb (public): Monthy Python Shopping list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   260
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   261
654
c56109c9aebf tutorial: fix grammar, spelling, punctuation
Greg Ward <greg@gerg.ca>
parents: 652
diff changeset
   262
Removing changesets
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   263
------------------------
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   264
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   265
I add new item to my list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   266
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   267
  $ cat >> shopping << EOF
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   268
  > car
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   269
  > bus
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   270
  > plane
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   271
  > boat
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   272
  > EOF
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   273
  $ hg ci -m 'transport'
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   274
  $ hg log -G
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   275
  @  1125e39fbf21 (draft): transport
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   276
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   277
  o  41aff6a42b75 (draft): adding fruit
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   278
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   279
  o  dfd3a2d7691e (draft): adding condiment
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   280
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   281
  o  9ca060c80d74 (public): SPAM
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   282
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   283
  o  7e82d3f3c2cb (public): Monthy Python Shopping list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   284
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   285
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   286
I have a new commit but I realize that don't want it. (transport shop list does
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   287
not fit well in my standard shopping list)
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   288
771
126e31c7658b tutorial Clarify "." explanation
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 770
diff changeset
   289
  $ hg prune . # "." is for working directory parent
688
f2c3fd21fa63 prune: add an informative message about the number of pruned changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 654
diff changeset
   290
  1 changesets pruned
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   291
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   292
  working directory now at 41aff6a42b75
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   293
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   294
The silly changeset is gone.
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   295
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   296
  $ hg log -G
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   297
  @  41aff6a42b75 (draft): adding fruit
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   298
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   299
  o  dfd3a2d7691e (draft): adding condiment
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   300
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   301
  o  9ca060c80d74 (public): SPAM
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   302
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   303
  o  7e82d3f3c2cb (public): Monthy Python Shopping list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   304
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   305
654
c56109c9aebf tutorial: fix grammar, spelling, punctuation
Greg Ward <greg@gerg.ca>
parents: 652
diff changeset
   306
Reordering changesets
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   307
------------------------
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   308
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   309
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   310
We create two changesets.
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   311
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   312
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   313
  $ cat >> shopping << EOF
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   314
  > Shampoo
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   315
  > Toothbrush
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   316
  > ... More bathroom stuff to come
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   317
  > Towel
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   318
  > Soap
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   319
  > EOF
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   320
  $ hg ci -m 'bathroom stuff' -q # XXX remove the -q
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   321
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   322
  $ sed -i'' -e 's/Spam/Spam Spam Spam/g' shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   323
  $ hg ci -m 'SPAM SPAM'
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   324
  $ hg log -G
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   325
  @  fac207dec9f5 (draft): SPAM SPAM
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   326
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   327
  o  10b8aeaa8cc8 (draft): bathroom stuff
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   328
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   329
  o  41aff6a42b75 (draft): adding fruit
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   330
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   331
  o  dfd3a2d7691e (draft): adding condiment
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   332
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   333
  o  9ca060c80d74 (public): SPAM
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   334
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   335
  o  7e82d3f3c2cb (public): Monthy Python Shopping list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   336
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   337
774
03844e1fbfe6 tutorial: fix note
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 773
diff changeset
   338
.. note:: We can't amend changeset 7e82d3f3c2cb or 9ca060c80d74 as they are immutable.
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   339
768
b116de5dc70d tutorial: fix some various typo
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 767
diff changeset
   340
 I now want to push to remote all my changes except the bathroom one, which I'm
b116de5dc70d tutorial: fix some various typo
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 767
diff changeset
   341
 not totally happy with yet. To be able to push "SPAM SPAM" I need a version of
b116de5dc70d tutorial: fix some various typo
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 767
diff changeset
   342
 "SPAM SPAM" which is not a child of "bathroom stuff"
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   343
772
27b3442f08d9 tutorial: use grab instead of rebase.
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 771
diff changeset
   344
You can use the 'grab' alias for that.
27b3442f08d9 tutorial: use grab instead of rebase.
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 771
diff changeset
   345
27b3442f08d9 tutorial: use grab instead of rebase.
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 771
diff changeset
   346
.. note: grab is an alias for `hg rebase --dest . --rev <target>; hg up <there>`
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   347
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   348
  $ hg up 'p1(10b8aeaa8cc8)' # going on "bathroom stuff" parent
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   349
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
772
27b3442f08d9 tutorial: use grab instead of rebase.
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 771
diff changeset
   350
  $ hg grab fac207dec9f5 # moving "SPAM SPAM" to the working directory parent
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   351
  merging shopping
747
9300f48786de test: prepare test for core changeset 9c78ed396075
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 743
diff changeset
   352
  ? files updated, 0 files merged, 0 files removed, 0 files unresolved (glob)
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   353
  $ hg log -G
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   354
  @  a224f2a4fb9f (draft): SPAM SPAM
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   355
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   356
  | o  10b8aeaa8cc8 (draft): bathroom stuff
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   357
  |/
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   358
  o  41aff6a42b75 (draft): adding fruit
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   359
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   360
  o  dfd3a2d7691e (draft): adding condiment
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   361
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   362
  o  9ca060c80d74 (public): SPAM
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   363
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   364
  o  7e82d3f3c2cb (public): Monthy Python Shopping list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   365
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   366
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   367
We have a new SPAM SPAM version without the bathroom stuff
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   368
634
e763f7e94211 tutorial: glog is into core now
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 590
diff changeset
   369
  $ grep Spam shopping  # enough spam
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   370
  Spam Spam Spam Spam Spam Spam Spam Spam Spam
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   371
  $ grep Toothbrush shopping # no Toothbrush
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   372
  [1]
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   373
  $ hg export .
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   374
  # HG changeset patch
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   375
  # User test
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   376
  # Date 0 0
726
06cd220141ba Adapt to human readable date in patch
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 696
diff changeset
   377
  #      Thu Jan 01 00:00:00 1970 +0000
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   378
  # Node ID a224f2a4fb9f9f828f608959912229d7b38b26de
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   379
  # Parent  41aff6a42b7578ec7ec3cb2041633f1ca43cca96
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   380
  SPAM SPAM
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   381
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   382
  diff --git a/shopping b/shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   383
  --- a/shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   384
  +++ b/shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   385
  @@ -1,4 +1,4 @@
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   386
  -Spam Spam Spam
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   387
  +Spam Spam Spam Spam Spam Spam Spam Spam Spam
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   388
   Whizzo butter
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   389
   Albatross
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   390
   Rat (rather a lot)
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   391
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   392
To make sure I do not push unready changeset by mistake I set the "bathroom
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   393
stuff" changeset in the secret phase.
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   394
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   395
  $ hg phase --force --secret 10b8aeaa8cc8
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   396
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   397
we can now push our change:
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   398
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   399
  $ hg push remote
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   400
  pushing to $TESTTMP/remote
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   401
  searching for changes
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   402
  adding changesets
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   403
  adding manifests
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   404
  adding file changes
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   405
  added 3 changesets with 3 changes to 1 files
1037
bddee73b361e evolve: add "absolescence" in front of markers in the message
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1036
diff changeset
   406
  pushing 6 obsolescence markers (487 bytes)
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   407
768
b116de5dc70d tutorial: fix some various typo
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 767
diff changeset
   408
for simplicity sake we get the bathroom change in line again
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   409
772
27b3442f08d9 tutorial: use grab instead of rebase.
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 771
diff changeset
   410
  $ hg grab 10b8aeaa8cc8
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   411
  merging shopping
747
9300f48786de test: prepare test for core changeset 9c78ed396075
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 743
diff changeset
   412
  ? files updated, 0 files merged, 0 files removed, 0 files unresolved (glob)
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   413
  $ hg phase --draft .
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   414
  $ hg log -G
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   415
  @  75954b8cd933 (draft): bathroom stuff
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   416
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   417
  o  a224f2a4fb9f (public): SPAM SPAM
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   418
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   419
  o  41aff6a42b75 (public): adding fruit
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   420
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   421
  o  dfd3a2d7691e (public): adding condiment
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   422
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   423
  o  9ca060c80d74 (public): SPAM
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   424
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   425
  o  7e82d3f3c2cb (public): Monthy Python Shopping list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   426
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   427
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   428
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   429
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   430
Splitting change
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   431
------------------
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   432
767
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   433
This part is not written yet, but you can use either the `histedit` extension
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   434
of the `uncommit` command to splitting a change.
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   435
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   436
  $ hg help uncommit
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   437
  hg uncommit [OPTION]... [NAME]
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   438
  
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   439
  move changes from parent revision to working directory
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   440
  
891
36c1c80e99a3 commands: small language fixes in help
Brendan Cully <brendan@kublai.com>
parents: 867
diff changeset
   441
      Changes to selected files in the checked out revision appear again as
36c1c80e99a3 commands: small language fixes in help
Brendan Cully <brendan@kublai.com>
parents: 867
diff changeset
   442
      uncommitted changed in the working directory. A new revision without the
36c1c80e99a3 commands: small language fixes in help
Brendan Cully <brendan@kublai.com>
parents: 867
diff changeset
   443
      selected changes is created, becomes the checked out revision, and
36c1c80e99a3 commands: small language fixes in help
Brendan Cully <brendan@kublai.com>
parents: 867
diff changeset
   444
      obsoletes the previous one.
767
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   445
  
867
6a67606e1c34 evolve: fix typos in uncommit docstring
André Sintzoff <andre.sintzoff@gmail.com>
parents: 803
diff changeset
   446
      The --include option specifies patterns to uncommit. The --exclude option
6a67606e1c34 evolve: fix typos in uncommit docstring
André Sintzoff <andre.sintzoff@gmail.com>
parents: 803
diff changeset
   447
      specifies patterns to keep in the commit.
767
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   448
  
1058
00bc31523074 uncommit: add a --rev argument
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1040
diff changeset
   449
      The --rev argument let you change the commit file to a content of another
00bc31523074 uncommit: add a --rev argument
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1040
diff changeset
   450
      revision. It still does not change the content of your file in the working
00bc31523074 uncommit: add a --rev argument
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1040
diff changeset
   451
      directory.
00bc31523074 uncommit: add a --rev argument
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1040
diff changeset
   452
  
767
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   453
      Return 0 if changed files are uncommitted.
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   454
  
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   455
  options:
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   456
  
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   457
   -a --all                 uncommit all changes when no arguments given
1058
00bc31523074 uncommit: add a --rev argument
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1040
diff changeset
   458
   -r --rev VALUE           revert commit content to REV instead
767
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   459
   -I --include PATTERN [+] include names matching the given patterns
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   460
   -X --exclude PATTERN [+] exclude names matching the given patterns
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   461
  
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   462
  [+] marked option can be specified multiple times
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   463
  
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   464
  use "hg -v help uncommit" to show the global options
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   465
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   466
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   467
The edit command of histedit can be used to split changeset:
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   468
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   469
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   470
Collapsing change
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   471
------------------
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   472
767
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   473
The tutorial part is not written yet but can use `hg fold`:
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   474
767
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   475
  $ hg help fold
996
b98dd5d3065c fold: overhaul handling of revisions with --rev (BC)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 957
diff changeset
   476
  hg fold [OPTION]... [-r] REV
767
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   477
  
934
f13facb01ac5 fold: add squash as a possible alias
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 933
diff changeset
   478
  aliases: squash
f13facb01ac5 fold: add squash as a possible alias
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 933
diff changeset
   479
  
996
b98dd5d3065c fold: overhaul handling of revisions with --rev (BC)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 957
diff changeset
   480
  fold multiple revisions into a single one
767
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   481
  
996
b98dd5d3065c fold: overhaul handling of revisions with --rev (BC)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 957
diff changeset
   482
      Folds a set of revisions with the parent of the working directory. All
b98dd5d3065c fold: overhaul handling of revisions with --rev (BC)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 957
diff changeset
   483
      revisions linearly between the given revisions and the parent of the
b98dd5d3065c fold: overhaul handling of revisions with --rev (BC)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 957
diff changeset
   484
      working directory will also be folded.
767
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   485
  
996
b98dd5d3065c fold: overhaul handling of revisions with --rev (BC)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 957
diff changeset
   486
      Use --exact for folding only the specified revisions while ignoring the
b98dd5d3065c fold: overhaul handling of revisions with --rev (BC)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 957
diff changeset
   487
      parent of the working directory. In this case, the given revisions must
b98dd5d3065c fold: overhaul handling of revisions with --rev (BC)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 957
diff changeset
   488
      form a linear unbroken chain.
767
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   489
  
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   490
  options:
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   491
  
996
b98dd5d3065c fold: overhaul handling of revisions with --rev (BC)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 957
diff changeset
   492
   -r --rev VALUE [+] revision to fold
b98dd5d3065c fold: overhaul handling of revisions with --rev (BC)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 957
diff changeset
   493
      --exact         only fold specified revisions
933
e5baeb8fefec fold: add --message and --logfile options
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 915
diff changeset
   494
   -m --message TEXT  use text as commit message
e5baeb8fefec fold: add --message and --logfile options
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 915
diff changeset
   495
   -l --logfile FILE  read commit message from file
915
1ebe5c51919b fold: enable --date and --user options
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 891
diff changeset
   496
   -d --date DATE     record the specified date as commit date
1ebe5c51919b fold: enable --date and --user options
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 891
diff changeset
   497
   -u --user USER     record the specified user as committer
767
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   498
  
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   499
  [+] marked option can be specified multiple times
01a270481a61 tutorial Display the help of appropriate command in section that need writting
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 766
diff changeset
   500
  
996
b98dd5d3065c fold: overhaul handling of revisions with --rev (BC)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 957
diff changeset
   501
  use "hg -v help fold" to show more complete help and the global options
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   502
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   503
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   504
-----------------------
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   505
Collaboration
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   506
-----------------------
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   507
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   508
768
b116de5dc70d tutorial: fix some various typo
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 767
diff changeset
   509
sharing mutable changesets
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   510
----------------------------
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   511
768
b116de5dc70d tutorial: fix some various typo
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 767
diff changeset
   512
To share mutable changesets with others, just check that the repo you interact
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   513
with is "not publishing". Otherwise you will get the previously observe
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   514
behavior where exchanged changeset are automatically published.
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   515
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   516
  $ cd ../remote
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   517
  $ hg -R ../local/ showconfig phases
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   518
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   519
the localrepo does not have any specific configuration for `phases.publish`. It
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   520
is ``true`` by default.
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   521
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   522
  $ hg pull local
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   523
  pulling from $TESTTMP/local
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   524
  searching for changes
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   525
  adding changesets
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   526
  adding manifests
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   527
  adding file changes
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   528
  added 1 changesets with 1 changes to 1 files
1038
45c4739e85dc evolve: make the "pulling obsolescence marker" message important
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1037
diff changeset
   529
  pull obsolescence markers
1040
640f3280559e evolve: add "obsolescence" in front of marked in the previous message
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1039
diff changeset
   530
  1 obsolescence markers added
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   531
  (run 'hg update' to get a working copy)
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   532
  $ hg log -G
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   533
  o  75954b8cd933 (public): bathroom stuff
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   534
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   535
  o  a224f2a4fb9f (public): SPAM SPAM
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   536
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   537
  o  41aff6a42b75 (public): adding fruit
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   538
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   539
  o  dfd3a2d7691e (public): adding condiment
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   540
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   541
  @  9ca060c80d74 (public): SPAM
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   542
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   543
  o  7e82d3f3c2cb (public): Monthy Python Shopping list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   544
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   545
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   546
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   547
773
fc8034069fe1 tutorial: warn about rollback beeing obsolete
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 772
diff changeset
   548
We do not want to publish the "bathroom changeset". Let's rollback the last transaction.
fc8034069fe1 tutorial: warn about rollback beeing obsolete
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 772
diff changeset
   549
fc8034069fe1 tutorial: warn about rollback beeing obsolete
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 772
diff changeset
   550
.. Warning: Rollback is actually a dangerous kind of internal command that is deprecated and should not be exposed to user. Please forget you read about it until someone fix this tutorial.
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   551
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   552
  $ hg rollback
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   553
  repository tip rolled back to revision 4 (undo pull)
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   554
  $ hg log -G
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   555
  o  a224f2a4fb9f (public): SPAM SPAM
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   556
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   557
  o  41aff6a42b75 (public): adding fruit
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   558
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   559
  o  dfd3a2d7691e (public): adding condiment
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   560
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   561
  @  9ca060c80d74 (public): SPAM
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   562
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   563
  o  7e82d3f3c2cb (public): Monthy Python Shopping list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   564
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   565
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   566
Let's make the local repo "non publishing"
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   567
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   568
  $ echo '[phases]' >> ../local/.hg/hgrc
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   569
  $ echo 'publish=false' >> ../local/.hg/hgrc
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   570
  $ echo '[phases]' >> .hg/hgrc
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   571
  $ echo 'publish=false' >> .hg/hgrc
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   572
  $ hg showconfig phases
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   573
  phases.publish=false
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   574
  $ hg -R ../local/ showconfig phases
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   575
  phases.publish=false
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   576
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   577
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   578
I can now exchange mutable changeset between "remote" and "local" repository.
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   579
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   580
  $ hg pull local
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   581
  pulling from $TESTTMP/local
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   582
  searching for changes
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   583
  adding changesets
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   584
  adding manifests
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   585
  adding file changes
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   586
  added 1 changesets with 1 changes to 1 files
1038
45c4739e85dc evolve: make the "pulling obsolescence marker" message important
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1037
diff changeset
   587
  pull obsolescence markers
1040
640f3280559e evolve: add "obsolescence" in front of marked in the previous message
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1039
diff changeset
   588
  1 obsolescence markers added
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   589
  (run 'hg update' to get a working copy)
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   590
  $ hg log -G
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   591
  o  75954b8cd933 (draft): bathroom stuff
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   592
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   593
  o  a224f2a4fb9f (public): SPAM SPAM
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   594
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   595
  o  41aff6a42b75 (public): adding fruit
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   596
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   597
  o  dfd3a2d7691e (public): adding condiment
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   598
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   599
  @  9ca060c80d74 (public): SPAM
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   600
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   601
  o  7e82d3f3c2cb (public): Monthy Python Shopping list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   602
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   603
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   604
Rebasing unstable change after pull
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   605
----------------------------------------------
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   606
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   607
Remotely someone add a new changeset on top of the mutable "bathroom" on.
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   608
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   609
  $ hg up 75954b8cd933 -q
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   610
  $ cat >> shopping << EOF
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   611
  > Giraffe
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   612
  > Rhino
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   613
  > Lion
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   614
  > Bear
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   615
  > EOF
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   616
  $ hg ci -m 'animals'
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   617
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   618
But at the same time, locally, this same "bathroom changeset" was updated.
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   619
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   620
  $ cd ../local
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   621
  $ hg up 75954b8cd933 -q
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   622
  $ sed -i'' -e 's/... More bathroom stuff to come/Bath Robe/' shopping
637
fdbbc9b2fca2 tutorial: use commit --amend when possible
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 636
diff changeset
   623
  $ hg commit --amend
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   624
  $ hg log -G
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   625
  @  a44c85f957d3 (draft): bathroom stuff
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   626
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   627
  o  a224f2a4fb9f (public): SPAM SPAM
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   628
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   629
  o  41aff6a42b75 (public): adding fruit
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   630
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   631
  o  dfd3a2d7691e (public): adding condiment
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   632
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   633
  o  9ca060c80d74 (public): SPAM
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   634
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   635
  o  7e82d3f3c2cb (public): Monthy Python Shopping list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   636
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   637
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   638
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   639
When we pull from remote again we get an unstable state!
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   640
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   641
  $ hg pull remote
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   642
  pulling from $TESTTMP/remote
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   643
  searching for changes
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   644
  adding changesets
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   645
  adding manifests
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   646
  adding file changes
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   647
  added 1 changesets with 1 changes to 1 files (+1 heads)
1038
45c4739e85dc evolve: make the "pulling obsolescence marker" message important
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1037
diff changeset
   648
  pull obsolescence markers
1040
640f3280559e evolve: add "obsolescence" in front of marked in the previous message
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1039
diff changeset
   649
  0 obsolescence markers added
625
e291e5271694 prepare for Full scale filtering !!!
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 590
diff changeset
   650
  (run 'hg heads' to see heads, 'hg merge' to merge)
486
2111c655b4f5 fix typo
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 466
diff changeset
   651
  1 new unstable changesets
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   652
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   653
654
c56109c9aebf tutorial: fix grammar, spelling, punctuation
Greg Ward <greg@gerg.ca>
parents: 652
diff changeset
   654
The new changeset "animal" is based on an old changeset of "bathroom". You can
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   655
see both version showing up in the log.
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   656
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   657
  $ hg log -G
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   658
  o  bf1b0d202029 (draft): animals
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   659
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   660
  | @  a44c85f957d3 (draft): bathroom stuff
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   661
  | |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   662
  x |  75954b8cd933 (draft): bathroom stuff
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   663
  |/
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   664
  o  a224f2a4fb9f (public): SPAM SPAM
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   665
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   666
  o  41aff6a42b75 (public): adding fruit
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   667
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   668
  o  dfd3a2d7691e (public): adding condiment
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   669
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   670
  o  9ca060c80d74 (public): SPAM
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   671
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   672
  o  7e82d3f3c2cb (public): Monthy Python Shopping list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   673
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   674
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   675
The older version 75954b8cd933 never ceased to exist in the local repo. It was
654
c56109c9aebf tutorial: fix grammar, spelling, punctuation
Greg Ward <greg@gerg.ca>
parents: 652
diff changeset
   676
just hidden and excluded from pull and push.
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   677
654
c56109c9aebf tutorial: fix grammar, spelling, punctuation
Greg Ward <greg@gerg.ca>
parents: 652
diff changeset
   678
.. 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``.
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   679
654
c56109c9aebf tutorial: fix grammar, spelling, punctuation
Greg Ward <greg@gerg.ca>
parents: 652
diff changeset
   680
There is now an **unstable** changeset in this history. Mercurial will refuse to
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   681
share it with the outside:
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   682
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   683
  $ hg push other
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   684
  pushing to $TESTTMP/other
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   685
  searching for changes
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   686
  abort: push includes unstable changeset: bf1b0d202029!
492
7ecd41520dae rename `stabilize` to `evolve`
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 486
diff changeset
   687
  (use 'hg evolve' to get a stable history or --force to ignore warnings)
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   688
  [255]
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   689
 
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   690
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   691
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   692
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   693
To resolve this unstable state, you need to rebase bf1b0d202029 onto
768
b116de5dc70d tutorial: fix some various typo
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 767
diff changeset
   694
a44c85f957d3. The `hg evolve` command will do this for you.
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   695
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   696
It has a --dry-run option to only suggest the next move.
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   697
492
7ecd41520dae rename `stabilize` to `evolve`
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 486
diff changeset
   698
  $ hg evolve --dry-run
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   699
  move:[15] animals
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   700
  atop:[14] bathroom stuff
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   701
  hg rebase -r bf1b0d202029 -d a44c85f957d3
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   702
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   703
Let's do it
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   704
639
bc2527223350 tutorial: use evolve directly
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 638
diff changeset
   705
  $ hg evolve
bc2527223350 tutorial: use evolve directly
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 638
diff changeset
   706
  move:[15] animals
bc2527223350 tutorial: use evolve directly
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 638
diff changeset
   707
  atop:[14] bathroom stuff
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   708
  merging shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   709
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   710
The old version of bathroom is hidden again.
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   711
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   712
  $ hg log -G
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   713
  @  ee942144f952 (draft): animals
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   714
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   715
  o  a44c85f957d3 (draft): bathroom stuff
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   716
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   717
  o  a224f2a4fb9f (public): SPAM SPAM
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   718
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   719
  o  41aff6a42b75 (public): adding fruit
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   720
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   721
  o  dfd3a2d7691e (public): adding condiment
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   722
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   723
  o  9ca060c80d74 (public): SPAM
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   724
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   725
  o  7e82d3f3c2cb (public): Monthy Python Shopping list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   726
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   727
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   728
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   729
We can push this evolution to remote
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   730
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   731
  $ hg push remote
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   732
  pushing to $TESTTMP/remote
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   733
  searching for changes
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   734
  adding changesets
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   735
  adding manifests
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   736
  adding file changes
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   737
  added 2 changesets with 2 changes to 1 files (+1 heads)
1037
bddee73b361e evolve: add "absolescence" in front of markers in the message
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1036
diff changeset
   738
  pushing 10 obsolescence markers (803 bytes)
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   739
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   740
remote get a warning that current working directory is based on an obsolete changeset
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   741
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   742
  $ cd ../remote
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   743
  $ hg pull local # we up again to trigger the warning. it was displayed during the push
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   744
  pulling from $TESTTMP/local
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   745
  searching for changes
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   746
  no changes found
1038
45c4739e85dc evolve: make the "pulling obsolescence marker" message important
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1037
diff changeset
   747
  pull obsolescence markers
1040
640f3280559e evolve: add "obsolescence" in front of marked in the previous message
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1039
diff changeset
   748
  0 obsolescence markers added
743
af74a5cdf96b conform to the Mercurial custom of lowercase messages
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 726
diff changeset
   749
  working directory parent is obsolete!
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   750
750
ddbea2fdee5e evolve: allow updating to the successor if the parent is obsolete
Dan Villiom Podlaski Christiansen <dan@cabo.dk>
parents: 747
diff changeset
   751
now let's see where we are, and update to the successor
ddbea2fdee5e evolve: allow updating to the successor if the parent is obsolete
Dan Villiom Podlaski Christiansen <dan@cabo.dk>
parents: 747
diff changeset
   752
ddbea2fdee5e evolve: allow updating to the successor if the parent is obsolete
Dan Villiom Podlaski Christiansen <dan@cabo.dk>
parents: 747
diff changeset
   753
  $ hg parents
ddbea2fdee5e evolve: allow updating to the successor if the parent is obsolete
Dan Villiom Podlaski Christiansen <dan@cabo.dk>
parents: 747
diff changeset
   754
  bf1b0d202029 (draft): animals
ddbea2fdee5e evolve: allow updating to the successor if the parent is obsolete
Dan Villiom Podlaski Christiansen <dan@cabo.dk>
parents: 747
diff changeset
   755
  working directory parent is obsolete!
ddbea2fdee5e evolve: allow updating to the successor if the parent is obsolete
Dan Villiom Podlaski Christiansen <dan@cabo.dk>
parents: 747
diff changeset
   756
  $ hg evolve
ddbea2fdee5e evolve: allow updating to the successor if the parent is obsolete
Dan Villiom Podlaski Christiansen <dan@cabo.dk>
parents: 747
diff changeset
   757
  update:[8] animals
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   758
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   759
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   760
Relocating unstable change after prune
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   761
----------------------------------------------
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   762
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   763
The remote guy keep working
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   764
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   765
  $ sed -i'' -e 's/Spam/Spam Spam Spam Spam/g' shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   766
  $ hg commit -m "SPAM SPAM SPAM"
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   767
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   768
I'm pulling its work locally.
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   769
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   770
  $ cd ../local
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   771
  $ hg pull remote
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   772
  pulling from $TESTTMP/remote
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   773
  searching for changes
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   774
  adding changesets
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   775
  adding manifests
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   776
  adding file changes
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   777
  added 1 changesets with 1 changes to 1 files
1038
45c4739e85dc evolve: make the "pulling obsolescence marker" message important
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1037
diff changeset
   778
  pull obsolescence markers
1040
640f3280559e evolve: add "obsolescence" in front of marked in the previous message
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1039
diff changeset
   779
  0 obsolescence markers added
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   780
  (run 'hg update' to get a working copy)
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   781
  $ hg log -G
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   782
  o  99f039c5ec9e (draft): SPAM SPAM SPAM
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   783
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   784
  @  ee942144f952 (draft): animals
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   785
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   786
  o  a44c85f957d3 (draft): bathroom stuff
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   787
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   788
  o  a224f2a4fb9f (public): SPAM SPAM
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   789
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   790
  o  41aff6a42b75 (public): adding fruit
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   791
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   792
  o  dfd3a2d7691e (public): adding condiment
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   793
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   794
  o  9ca060c80d74 (public): SPAM
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   795
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   796
  o  7e82d3f3c2cb (public): Monthy Python Shopping list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   797
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   798
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   799
In the mean time I noticed you can't buy animals in a super market and I prune the animal changeset:
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   800
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   801
  $ hg prune ee942144f952
688
f2c3fd21fa63 prune: add an informative message about the number of pruned changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 654
diff changeset
   802
  1 changesets pruned
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   803
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   804
  working directory now at a44c85f957d3
486
2111c655b4f5 fix typo
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 466
diff changeset
   805
  1 new unstable changesets
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   806
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   807
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   808
The animals changeset is still displayed because the "SPAM SPAM SPAM" changeset
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   809
is neither dead or obsolete.  My repository is in an unstable state again.
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   810
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   811
  $ hg log -G
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   812
  o  99f039c5ec9e (draft): SPAM SPAM SPAM
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   813
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   814
  x  ee942144f952 (draft): animals
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   815
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   816
  @  a44c85f957d3 (draft): bathroom stuff
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   817
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   818
  o  a224f2a4fb9f (public): SPAM SPAM
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   819
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   820
  o  41aff6a42b75 (public): adding fruit
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   821
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   822
  o  dfd3a2d7691e (public): adding condiment
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   823
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   824
  o  9ca060c80d74 (public): SPAM
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   825
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   826
  o  7e82d3f3c2cb (public): Monthy Python Shopping list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   827
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   828
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   829
  $ hg log -r 'unstable()'
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   830
  99f039c5ec9e (draft): SPAM SPAM SPAM
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   831
636
27c890b4f864 evolve: make evolve smarter
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 635
diff changeset
   832
  $ hg evolve
466
b98490b689a5 stabilize: handle killed changeset in stabilize.
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 441
diff changeset
   833
  move:[17] SPAM SPAM SPAM
b98490b689a5 stabilize: handle killed changeset in stabilize.
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 441
diff changeset
   834
  atop:[14] bathroom stuff
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   835
  merging shopping
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   836
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   837
  $ hg log -G
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   838
  @  40aa40daeefb (draft): SPAM SPAM SPAM
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   839
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   840
  o  a44c85f957d3 (draft): bathroom stuff
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   841
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   842
  o  a224f2a4fb9f (public): SPAM SPAM
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   843
  |
640
629ec7f612aa tutorial: second replacement of hg amend by commit --amend
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 639
diff changeset
   844
  o  41aff6a42b75 (public): adding fruit
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   845
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   846
  o  dfd3a2d7691e (public): adding condiment
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   847
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   848
  o  9ca060c80d74 (public): SPAM
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   849
  |
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   850
  o  7e82d3f3c2cb (public): Monthy Python Shopping list
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   851
  
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   852
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   853
770
303d27c76021 tutorial: update divergent changeset section
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 769
diff changeset
   854
Handling Divergent amend
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   855
----------------------------------------------
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   856
803
b96d51a357bd test: get rid of all reference to conflicting changesets
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 774
diff changeset
   857
We can detect that multiple diverging amendments have been made.
770
303d27c76021 tutorial: update divergent changeset section
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 769
diff changeset
   858
The `evolve` command can solve this situation. But all corner case are not
303d27c76021 tutorial: update divergent changeset section
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 769
diff changeset
   859
handled now.
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 163
diff changeset
   860
654
c56109c9aebf tutorial: fix grammar, spelling, punctuation
Greg Ward <greg@gerg.ca>
parents: 652
diff changeset
   861
This section needs to be written.