tests/test-tutorial.t
changeset 2950 1b4c92621e23
parent 2929 06844693bb21
child 2951 2ddc63d13af8
equal deleted inserted replaced
2949:9345b2eeeef3 2950:1b4c92621e23
    63   > evolve = $TESTDIR/../hgext3rd/evolve/
    63   > evolve = $TESTDIR/../hgext3rd/evolve/
    64   > # enabling rebase is also needed for now
    64   > # enabling rebase is also needed for now
    65   > rebase =
    65   > rebase =
    66   > EOF
    66   > EOF
    67 
    67 
       
    68   $ . "$TESTDIR/testlib/graphviz_setup.sh" #ignore
       
    69 
    68 -----------------------
    70 -----------------------
    69 Single Developer Usage
    71 Single Developer Usage
    70 -----------------------
    72 -----------------------
    71 
    73 
    72 This tutorial shows how to use evolution to rewrite history locally.
    74 This tutorial shows how to use evolution to rewrite history locally.
   123   |
   125   |
   124   o  4d5dc8187023 (draft): adding condiment
   126   o  4d5dc8187023 (draft): adding condiment
   125   |
   127   |
   126   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   128   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   127   
   129   
       
   130   $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore
       
   131   .. graphviz::
       
   132   
       
   133       strict digraph  {
       
   134       	graph [rankdir=LR,
       
   135       		splines=polyline
       
   136       	];
       
   137       	node [label="\N"];
       
   138       	0	 [fillcolor="#7F7FFF",
       
   139       		fixedsize=true,
       
   140       		group=default,
       
   141       		height=2,
       
   142       		label="0: 7e82d3f3c2cb",
       
   143       		pin=true,
       
   144       		pos="1,0!",
       
   145       		shape=circle,
       
   146       		style=filled,
       
   147       		width=2];
       
   148       	1	 [fillcolor="#7F7FFF",
       
   149       		fixedsize=true,
       
   150       		group=default,
       
   151       		height=2,
       
   152       		label="1: 4d5dc8187023",
       
   153       		pin=true,
       
   154       		pos="1,1!",
       
   155       		shape=pentagon,
       
   156       		style=filled,
       
   157       		width=2];
       
   158       	0 -> 1;
       
   159       	2	 [fillcolor="#7F7FFF",
       
   160       		fixedsize=true,
       
   161       		group=default,
       
   162       		height=2,
       
   163       		label="2: d85de4546133",
       
   164       		pin=true,
       
   165       		pos="1,2!",
       
   166       		shape=pentagon,
       
   167       		style=filled,
       
   168       		width=2];
       
   169       	1 -> 2;
       
   170       }
   128 
   171 
   129 But a typo was made in Babanas!
   172 But a typo was made in Babanas!
   130 
   173 
   131   $ hg export tip
   174   $ hg export tip
   132   # HG changeset patch
   175   # HG changeset patch
   156   |
   199   |
   157   o  4d5dc8187023 (draft): adding condiment
   200   o  4d5dc8187023 (draft): adding condiment
   158   |
   201   |
   159   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   202   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   160   
   203   
       
   204 
       
   205   $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore
       
   206   .. graphviz::
       
   207   
       
   208       strict digraph  {
       
   209       	graph [rankdir=LR,
       
   210       		splines=polyline
       
   211       	];
       
   212       	node [label="\N"];
       
   213       	0	 [fillcolor="#7F7FFF",
       
   214       		fixedsize=true,
       
   215       		group=default,
       
   216       		height=2,
       
   217       		label="0: 7e82d3f3c2cb",
       
   218       		pin=true,
       
   219       		pos="1,0!",
       
   220       		shape=circle,
       
   221       		style=filled,
       
   222       		width=2];
       
   223       	1	 [fillcolor="#7F7FFF",
       
   224       		fixedsize=true,
       
   225       		group=default,
       
   226       		height=2,
       
   227       		label="1: 4d5dc8187023",
       
   228       		pin=true,
       
   229       		pos="1,1!",
       
   230       		shape=pentagon,
       
   231       		style=filled,
       
   232       		width=2];
       
   233       	0 -> 1;
       
   234       	2	 [fillcolor="#7F7FFF",
       
   235       		fixedsize=true,
       
   236       		group=default,
       
   237       		height=2,
       
   238       		label="2: d85de4546133",
       
   239       		pin=true,
       
   240       		pos="1,2!",
       
   241       		shape=pentagon,
       
   242       		style=filled,
       
   243       		width=2];
       
   244       	1 -> 2;
       
   245       }
   161 
   246 
   162 Hopefully. I can use `hg commit --amend` to rewrite my faulty changeset!
   247 Hopefully. I can use `hg commit --amend` to rewrite my faulty changeset!
   163 
   248 
   164   $ sed -i'' -e s/Bananos/Banana/ shopping
   249   $ sed -i'' -e s/Bananos/Banana/ shopping
   165   $ hg diff
   250   $ hg diff
   183   |
   268   |
   184   o  4d5dc8187023 (draft): adding condiment
   269   o  4d5dc8187023 (draft): adding condiment
   185   |
   270   |
   186   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   271   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   187   
   272   
       
   273   $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore
       
   274   .. graphviz::
       
   275   
       
   276       strict digraph  {
       
   277       	graph [rankdir=LR,
       
   278       		splines=polyline
       
   279       	];
       
   280       	node [label="\N"];
       
   281       	0	 [fillcolor="#7F7FFF",
       
   282       		fixedsize=true,
       
   283       		group=default,
       
   284       		height=2,
       
   285       		label="0: 7e82d3f3c2cb",
       
   286       		pin=true,
       
   287       		pos="1,0!",
       
   288       		shape=circle,
       
   289       		style=filled,
       
   290       		width=2];
       
   291       	1	 [fillcolor="#7F7FFF",
       
   292       		fixedsize=true,
       
   293       		group=default,
       
   294       		height=2,
       
   295       		label="1: 4d5dc8187023",
       
   296       		pin=true,
       
   297       		pos="1,1!",
       
   298       		shape=pentagon,
       
   299       		style=filled,
       
   300       		width=2];
       
   301       	0 -> 1;
       
   302       	4	 [fillcolor="#7F7FFF",
       
   303       		fixedsize=true,
       
   304       		group=default,
       
   305       		height=2,
       
   306       		label="4: 9d0363b81950",
       
   307       		pin=true,
       
   308       		pos="1,4!",
       
   309       		shape=pentagon,
       
   310       		style=filled,
       
   311       		width=2];
       
   312       	1 -> 4;
       
   313       }
       
   314 
   188   $ hg export tip
   315   $ hg export tip
   189   # HG changeset patch
   316   # HG changeset patch
   190   # User test
   317   # User test
   191   # Date 0 0
   318   # Date 0 0
   192   #      Thu Jan 01 00:00:00 1970 +0000
   319   #      Thu Jan 01 00:00:00 1970 +0000
   237   | o  4d5dc8187023 (draft): adding condiment
   364   | o  4d5dc8187023 (draft): adding condiment
   238   |/
   365   |/
   239   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   366   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   240   
   367   
   241 
   368 
       
   369   $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore
       
   370   .. graphviz::
       
   371   
       
   372       strict digraph  {
       
   373       	graph [rankdir=LR,
       
   374       		splines=polyline
       
   375       	];
       
   376       	node [label="\N"];
       
   377       	0	 [fillcolor="#7F7FFF",
       
   378       		fixedsize=true,
       
   379       		group=default,
       
   380       		height=2,
       
   381       		label="0: 7e82d3f3c2cb",
       
   382       		pin=true,
       
   383       		pos="1,0!",
       
   384       		shape=circle,
       
   385       		style=filled,
       
   386       		width=2];
       
   387       	1	 [fillcolor="#7F7FFF",
       
   388       		fixedsize=true,
       
   389       		group=default,
       
   390       		height=2,
       
   391       		label="1: 4d5dc8187023",
       
   392       		pin=true,
       
   393       		pos="1,1!",
       
   394       		shape=pentagon,
       
   395       		style=filled,
       
   396       		width=2];
       
   397       	0 -> 1;
       
   398       	5	 [fillcolor="#7F7FFF",
       
   399       		fixedsize=true,
       
   400       		group=default,
       
   401       		height=2,
       
   402       		label="5: 9ca060c80d74",
       
   403       		pin=true,
       
   404       		pos="1,5!",
       
   405       		shape=circle,
       
   406       		style=filled,
       
   407       		width=2];
       
   408       	0 -> 5;
       
   409       	4	 [fillcolor="#7F7FFF",
       
   410       		fixedsize=true,
       
   411       		group=default,
       
   412       		height=2,
       
   413       		label="4: 9d0363b81950",
       
   414       		pin=true,
       
   415       		pos="1,4!",
       
   416       		shape=pentagon,
       
   417       		style=filled,
       
   418       		width=2];
       
   419       	1 -> 4;
       
   420       }
       
   421 
   242 Instead of merging my head with the new one. I'm going to rebase my work
   422 Instead of merging my head with the new one. I'm going to rebase my work
   243 
   423 
   244   $ hg diff
   424   $ hg diff
   245   $ hg rebase --dest 9ca060c80d74 --source 4d5dc8187023
   425   $ hg rebase --dest 9ca060c80d74 --source 4d5dc8187023
   246   rebasing 1:4d5dc8187023 "adding condiment"
   426   rebasing 1:4d5dc8187023 "adding condiment"
   258   |
   438   |
   259   o  9ca060c80d74 (public): SPAM
   439   o  9ca060c80d74 (public): SPAM
   260   |
   440   |
   261   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   441   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   262   
   442   
       
   443   $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore
       
   444   .. graphviz::
       
   445   
       
   446       strict digraph  {
       
   447       	graph [rankdir=LR,
       
   448       		splines=polyline
       
   449       	];
       
   450       	node [label="\N"];
       
   451       	0	 [fillcolor="#7F7FFF",
       
   452       		fixedsize=true,
       
   453       		group=default,
       
   454       		height=2,
       
   455       		label="0: 7e82d3f3c2cb",
       
   456       		pin=true,
       
   457       		pos="1,0!",
       
   458       		shape=circle,
       
   459       		style=filled,
       
   460       		width=2];
       
   461       	5	 [fillcolor="#7F7FFF",
       
   462       		fixedsize=true,
       
   463       		group=default,
       
   464       		height=2,
       
   465       		label="5: 9ca060c80d74",
       
   466       		pin=true,
       
   467       		pos="1,5!",
       
   468       		shape=circle,
       
   469       		style=filled,
       
   470       		width=2];
       
   471       	0 -> 5;
       
   472       	6	 [fillcolor="#7F7FFF",
       
   473       		fixedsize=true,
       
   474       		group=default,
       
   475       		height=2,
       
   476       		label="6: dfd3a2d7691e",
       
   477       		pin=true,
       
   478       		pos="1,6!",
       
   479       		shape=pentagon,
       
   480       		style=filled,
       
   481       		width=2];
       
   482       	5 -> 6;
       
   483       	7	 [fillcolor="#7F7FFF",
       
   484       		fixedsize=true,
       
   485       		group=default,
       
   486       		height=2,
       
   487       		label="7: 41aff6a42b75",
       
   488       		pin=true,
       
   489       		pos="1,7!",
       
   490       		shape=pentagon,
       
   491       		style=filled,
       
   492       		width=2];
       
   493       	6 -> 7;
       
   494       }
   263 
   495 
   264 Removing changesets
   496 Removing changesets
   265 ------------------------
   497 ------------------------
   266 
   498 
   267 I add new items to my list.
   499 I add new items to my list.
   303   o  9ca060c80d74 (public): SPAM
   535   o  9ca060c80d74 (public): SPAM
   304   |
   536   |
   305   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   537   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   306   
   538   
   307 
   539 
       
   540   $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore
       
   541   .. graphviz::
       
   542   
       
   543       strict digraph  {
       
   544       	graph [rankdir=LR,
       
   545       		splines=polyline
       
   546       	];
       
   547       	node [label="\N"];
       
   548       	0	 [fillcolor="#7F7FFF",
       
   549       		fixedsize=true,
       
   550       		group=default,
       
   551       		height=2,
       
   552       		label="0: 7e82d3f3c2cb",
       
   553       		pin=true,
       
   554       		pos="1,0!",
       
   555       		shape=circle,
       
   556       		style=filled,
       
   557       		width=2];
       
   558       	5	 [fillcolor="#7F7FFF",
       
   559       		fixedsize=true,
       
   560       		group=default,
       
   561       		height=2,
       
   562       		label="5: 9ca060c80d74",
       
   563       		pin=true,
       
   564       		pos="1,5!",
       
   565       		shape=circle,
       
   566       		style=filled,
       
   567       		width=2];
       
   568       	0 -> 5;
       
   569       	6	 [fillcolor="#7F7FFF",
       
   570       		fixedsize=true,
       
   571       		group=default,
       
   572       		height=2,
       
   573       		label="6: dfd3a2d7691e",
       
   574       		pin=true,
       
   575       		pos="1,6!",
       
   576       		shape=pentagon,
       
   577       		style=filled,
       
   578       		width=2];
       
   579       	5 -> 6;
       
   580       	7	 [fillcolor="#7F7FFF",
       
   581       		fixedsize=true,
       
   582       		group=default,
       
   583       		height=2,
       
   584       		label="7: 41aff6a42b75",
       
   585       		pin=true,
       
   586       		pos="1,7!",
       
   587       		shape=pentagon,
       
   588       		style=filled,
       
   589       		width=2];
       
   590       	6 -> 7;
       
   591       }
       
   592 
   308 Reordering changesets
   593 Reordering changesets
   309 ------------------------
   594 ------------------------
   310 
   595 
   311 
   596 
   312 We create two changesets.
   597 We create two changesets.
   364   |
   649   |
   365   o  9ca060c80d74 (public): SPAM
   650   o  9ca060c80d74 (public): SPAM
   366   |
   651   |
   367   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   652   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   368   
   653   
       
   654 
       
   655   $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore
       
   656   .. graphviz::
       
   657   
       
   658       strict digraph  {
       
   659       	graph [rankdir=LR,
       
   660       		splines=polyline
       
   661       	];
       
   662       	node [label="\N"];
       
   663       	0	 [fillcolor="#7F7FFF",
       
   664       		fixedsize=true,
       
   665       		group=default,
       
   666       		height=2,
       
   667       		label="0: 7e82d3f3c2cb",
       
   668       		pin=true,
       
   669       		pos="1,0!",
       
   670       		shape=circle,
       
   671       		style=filled,
       
   672       		width=2];
       
   673       	5	 [fillcolor="#7F7FFF",
       
   674       		fixedsize=true,
       
   675       		group=default,
       
   676       		height=2,
       
   677       		label="5: 9ca060c80d74",
       
   678       		pin=true,
       
   679       		pos="1,5!",
       
   680       		shape=circle,
       
   681       		style=filled,
       
   682       		width=2];
       
   683       	0 -> 5;
       
   684       	6	 [fillcolor="#7F7FFF",
       
   685       		fixedsize=true,
       
   686       		group=default,
       
   687       		height=2,
       
   688       		label="6: dfd3a2d7691e",
       
   689       		pin=true,
       
   690       		pos="1,6!",
       
   691       		shape=pentagon,
       
   692       		style=filled,
       
   693       		width=2];
       
   694       	5 -> 6;
       
   695       	7	 [fillcolor="#7F7FFF",
       
   696       		fixedsize=true,
       
   697       		group=default,
       
   698       		height=2,
       
   699       		label="7: 41aff6a42b75",
       
   700       		pin=true,
       
   701       		pos="1,7!",
       
   702       		shape=pentagon,
       
   703       		style=filled,
       
   704       		width=2];
       
   705       	6 -> 7;
       
   706       	9	 [fillcolor="#7F7FFF",
       
   707       		fixedsize=true,
       
   708       		group=default,
       
   709       		height=2,
       
   710       		label="9: 10b8aeaa8cc8",
       
   711       		pin=true,
       
   712       		pos="1,9!",
       
   713       		shape=pentagon,
       
   714       		style=filled,
       
   715       		width=2];
       
   716       	7 -> 9;
       
   717       	11	 [fillcolor="#7F7FFF",
       
   718       		fixedsize=true,
       
   719       		group=default,
       
   720       		height=2,
       
   721       		label="11: a224f2a4fb9f",
       
   722       		pin=true,
       
   723       		pos="1,11!",
       
   724       		shape=pentagon,
       
   725       		style=filled,
       
   726       		width=2];
       
   727       	7 -> 11;
       
   728       }
   369 
   729 
   370 We have a new SPAM SPAM version without the bathroom stuff
   730 We have a new SPAM SPAM version without the bathroom stuff
   371 
   731 
   372   $ grep Spam shopping  # enough spam
   732   $ grep Spam shopping  # enough spam
   373   Spam Spam Spam Spam Spam Spam Spam Spam Spam
   733   Spam Spam Spam Spam Spam Spam Spam Spam Spam
   427   o  9ca060c80d74 (public): SPAM
   787   o  9ca060c80d74 (public): SPAM
   428   |
   788   |
   429   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   789   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   430   
   790   
   431 
   791 
   432 
   792   $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore
       
   793   .. graphviz::
       
   794   
       
   795       strict digraph  {
       
   796       	graph [rankdir=LR,
       
   797       		splines=polyline
       
   798       	];
       
   799       	node [label="\N"];
       
   800       	0	 [fillcolor="#7F7FFF",
       
   801       		fixedsize=true,
       
   802       		group=default,
       
   803       		height=2,
       
   804       		label="0: 7e82d3f3c2cb",
       
   805       		pin=true,
       
   806       		pos="1,0!",
       
   807       		shape=circle,
       
   808       		style=filled,
       
   809       		width=2];
       
   810       	5	 [fillcolor="#7F7FFF",
       
   811       		fixedsize=true,
       
   812       		group=default,
       
   813       		height=2,
       
   814       		label="5: 9ca060c80d74",
       
   815       		pin=true,
       
   816       		pos="1,5!",
       
   817       		shape=circle,
       
   818       		style=filled,
       
   819       		width=2];
       
   820       	0 -> 5;
       
   821       	6	 [fillcolor="#7F7FFF",
       
   822       		fixedsize=true,
       
   823       		group=default,
       
   824       		height=2,
       
   825       		label="6: dfd3a2d7691e",
       
   826       		pin=true,
       
   827       		pos="1,6!",
       
   828       		shape=circle,
       
   829       		style=filled,
       
   830       		width=2];
       
   831       	5 -> 6;
       
   832       	7	 [fillcolor="#7F7FFF",
       
   833       		fixedsize=true,
       
   834       		group=default,
       
   835       		height=2,
       
   836       		label="7: 41aff6a42b75",
       
   837       		pin=true,
       
   838       		pos="1,7!",
       
   839       		shape=circle,
       
   840       		style=filled,
       
   841       		width=2];
       
   842       	6 -> 7;
       
   843       	11	 [fillcolor="#7F7FFF",
       
   844       		fixedsize=true,
       
   845       		group=default,
       
   846       		height=2,
       
   847       		label="11: a224f2a4fb9f",
       
   848       		pin=true,
       
   849       		pos="1,11!",
       
   850       		shape=circle,
       
   851       		style=filled,
       
   852       		width=2];
       
   853       	7 -> 11;
       
   854       	12	 [fillcolor="#7F7FFF",
       
   855       		fixedsize=true,
       
   856       		group=default,
       
   857       		height=2,
       
   858       		label="12: 75954b8cd933",
       
   859       		pin=true,
       
   860       		pos="1,12!",
       
   861       		shape=pentagon,
       
   862       		style=filled,
       
   863       		width=2];
       
   864       	11 -> 12;
       
   865       }
   433 
   866 
   434 Splitting change
   867 Splitting change
   435 ------------------
   868 ------------------
   436 
   869 
   437 This part is not written yet, but you can use either the `histedit` extension
   870 This part is not written yet, but you can use either the `histedit` extension
   638   o  9ca060c80d74 (public): SPAM
  1071   o  9ca060c80d74 (public): SPAM
   639   |
  1072   |
   640   o  7e82d3f3c2cb (public): Monthy Python Shopping list
  1073   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   641   
  1074   
   642 
  1075 
       
  1076   $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore
       
  1077   .. graphviz::
       
  1078   
       
  1079       strict digraph  {
       
  1080       	graph [rankdir=LR,
       
  1081       		splines=polyline
       
  1082       	];
       
  1083       	node [label="\N"];
       
  1084       	0	 [fillcolor="#7F7FFF",
       
  1085       		fixedsize=true,
       
  1086       		group=default,
       
  1087       		height=2,
       
  1088       		label="0: 7e82d3f3c2cb",
       
  1089       		pin=true,
       
  1090       		pos="1,0!",
       
  1091       		shape=circle,
       
  1092       		style=filled,
       
  1093       		width=2];
       
  1094       	5	 [fillcolor="#7F7FFF",
       
  1095       		fixedsize=true,
       
  1096       		group=default,
       
  1097       		height=2,
       
  1098       		label="5: 9ca060c80d74",
       
  1099       		pin=true,
       
  1100       		pos="1,5!",
       
  1101       		shape=circle,
       
  1102       		style=filled,
       
  1103       		width=2];
       
  1104       	0 -> 5;
       
  1105       	6	 [fillcolor="#7F7FFF",
       
  1106       		fixedsize=true,
       
  1107       		group=default,
       
  1108       		height=2,
       
  1109       		label="6: dfd3a2d7691e",
       
  1110       		pin=true,
       
  1111       		pos="1,6!",
       
  1112       		shape=circle,
       
  1113       		style=filled,
       
  1114       		width=2];
       
  1115       	5 -> 6;
       
  1116       	7	 [fillcolor="#7F7FFF",
       
  1117       		fixedsize=true,
       
  1118       		group=default,
       
  1119       		height=2,
       
  1120       		label="7: 41aff6a42b75",
       
  1121       		pin=true,
       
  1122       		pos="1,7!",
       
  1123       		shape=circle,
       
  1124       		style=filled,
       
  1125       		width=2];
       
  1126       	6 -> 7;
       
  1127       	11	 [fillcolor="#7F7FFF",
       
  1128       		fixedsize=true,
       
  1129       		group=default,
       
  1130       		height=2,
       
  1131       		label="11: a224f2a4fb9f",
       
  1132       		pin=true,
       
  1133       		pos="1,11!",
       
  1134       		shape=circle,
       
  1135       		style=filled,
       
  1136       		width=2];
       
  1137       	7 -> 11;
       
  1138       	14	 [fillcolor="#7F7FFF",
       
  1139       		fixedsize=true,
       
  1140       		group=default,
       
  1141       		height=2,
       
  1142       		label="14: a44c85f957d3",
       
  1143       		pin=true,
       
  1144       		pos="1,14!",
       
  1145       		shape=pentagon,
       
  1146       		style=filled,
       
  1147       		width=2];
       
  1148       	11 -> 14;
       
  1149       }
       
  1150 
   643 When we pull from remote again we get an unstable state!
  1151 When we pull from remote again we get an unstable state!
   644 
  1152 
   645   $ hg pull remote
  1153   $ hg pull remote
   646   pulling from $TESTTMP/remote (glob)
  1154   pulling from $TESTTMP/remote (glob)
   647   searching for changes
  1155   searching for changes
   672   o  9ca060c80d74 (public): SPAM
  1180   o  9ca060c80d74 (public): SPAM
   673   |
  1181   |
   674   o  7e82d3f3c2cb (public): Monthy Python Shopping list
  1182   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   675   
  1183   
   676 
  1184 
       
  1185   $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore
       
  1186   .. graphviz::
       
  1187   
       
  1188       strict digraph  {
       
  1189       	graph [rankdir=LR,
       
  1190       		splines=polyline
       
  1191       	];
       
  1192       	node [label="\N"];
       
  1193       	0	 [fillcolor="#7F7FFF",
       
  1194       		fixedsize=true,
       
  1195       		group=default,
       
  1196       		height=2,
       
  1197       		label="0: 7e82d3f3c2cb",
       
  1198       		pin=true,
       
  1199       		pos="1,0!",
       
  1200       		shape=circle,
       
  1201       		style=filled,
       
  1202       		width=2];
       
  1203       	5	 [fillcolor="#7F7FFF",
       
  1204       		fixedsize=true,
       
  1205       		group=default,
       
  1206       		height=2,
       
  1207       		label="5: 9ca060c80d74",
       
  1208       		pin=true,
       
  1209       		pos="1,5!",
       
  1210       		shape=circle,
       
  1211       		style=filled,
       
  1212       		width=2];
       
  1213       	0 -> 5;
       
  1214       	6	 [fillcolor="#7F7FFF",
       
  1215       		fixedsize=true,
       
  1216       		group=default,
       
  1217       		height=2,
       
  1218       		label="6: dfd3a2d7691e",
       
  1219       		pin=true,
       
  1220       		pos="1,6!",
       
  1221       		shape=circle,
       
  1222       		style=filled,
       
  1223       		width=2];
       
  1224       	5 -> 6;
       
  1225       	7	 [fillcolor="#7F7FFF",
       
  1226       		fixedsize=true,
       
  1227       		group=default,
       
  1228       		height=2,
       
  1229       		label="7: 41aff6a42b75",
       
  1230       		pin=true,
       
  1231       		pos="1,7!",
       
  1232       		shape=circle,
       
  1233       		style=filled,
       
  1234       		width=2];
       
  1235       	6 -> 7;
       
  1236       	11	 [fillcolor="#7F7FFF",
       
  1237       		fixedsize=true,
       
  1238       		group=default,
       
  1239       		height=2,
       
  1240       		label="11: a224f2a4fb9f",
       
  1241       		pin=true,
       
  1242       		pos="1,11!",
       
  1243       		shape=circle,
       
  1244       		style=filled,
       
  1245       		width=2];
       
  1246       	7 -> 11;
       
  1247       	12	 [fillcolor="#DFDFFF",
       
  1248       		fixedsize=true,
       
  1249       		group=default_alt,
       
  1250       		height=2,
       
  1251       		label="12: 75954b8cd933",
       
  1252       		pin=true,
       
  1253       		pos="2,12!",
       
  1254       		shape=pentagon,
       
  1255       		style="dotted, filled",
       
  1256       		width=2];
       
  1257       	11 -> 12;
       
  1258       	14	 [fillcolor="#7F7FFF",
       
  1259       		fixedsize=true,
       
  1260       		group=default,
       
  1261       		height=2,
       
  1262       		label="14: a44c85f957d3",
       
  1263       		pin=true,
       
  1264       		pos="1,14!",
       
  1265       		shape=pentagon,
       
  1266       		style=filled,
       
  1267       		width=2];
       
  1268       	11 -> 14;
       
  1269       	12 -> 14	 [arrowtail=dot,
       
  1270       		dir=back,
       
  1271       		minlen=0,
       
  1272       		style=dotted];
       
  1273       	15	 [fillcolor="#FF3535",
       
  1274       		fixedsize=true,
       
  1275       		group=default_alt,
       
  1276       		height=2,
       
  1277       		label="15: bf1b0d202029",
       
  1278       		pin=true,
       
  1279       		pos="2,15!",
       
  1280       		shape=pentagon,
       
  1281       		style=filled,
       
  1282       		width=2];
       
  1283       	12 -> 15;
       
  1284       }
       
  1285 
   677 The older version 75954b8cd933 never ceased to exist in the local repo. It was
  1286 The older version 75954b8cd933 never ceased to exist in the local repo. It was
   678 just hidden and excluded from pull and push.
  1287 just hidden and excluded from pull and push.
   679 
  1288 
   680 .. 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``.
  1289 .. 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``.
   681 
  1290 
   723   |
  1332   |
   724   o  9ca060c80d74 (public): SPAM
  1333   o  9ca060c80d74 (public): SPAM
   725   |
  1334   |
   726   o  7e82d3f3c2cb (public): Monthy Python Shopping list
  1335   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   727   
  1336   
       
  1337 
       
  1338   $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore
       
  1339   .. graphviz::
       
  1340   
       
  1341       strict digraph  {
       
  1342       	graph [rankdir=LR,
       
  1343       		splines=polyline
       
  1344       	];
       
  1345       	node [label="\N"];
       
  1346       	0	 [fillcolor="#7F7FFF",
       
  1347       		fixedsize=true,
       
  1348       		group=default,
       
  1349       		height=2,
       
  1350       		label="0: 7e82d3f3c2cb",
       
  1351       		pin=true,
       
  1352       		pos="1,0!",
       
  1353       		shape=circle,
       
  1354       		style=filled,
       
  1355       		width=2];
       
  1356       	5	 [fillcolor="#7F7FFF",
       
  1357       		fixedsize=true,
       
  1358       		group=default,
       
  1359       		height=2,
       
  1360       		label="5: 9ca060c80d74",
       
  1361       		pin=true,
       
  1362       		pos="1,5!",
       
  1363       		shape=circle,
       
  1364       		style=filled,
       
  1365       		width=2];
       
  1366       	0 -> 5;
       
  1367       	6	 [fillcolor="#7F7FFF",
       
  1368       		fixedsize=true,
       
  1369       		group=default,
       
  1370       		height=2,
       
  1371       		label="6: dfd3a2d7691e",
       
  1372       		pin=true,
       
  1373       		pos="1,6!",
       
  1374       		shape=circle,
       
  1375       		style=filled,
       
  1376       		width=2];
       
  1377       	5 -> 6;
       
  1378       	7	 [fillcolor="#7F7FFF",
       
  1379       		fixedsize=true,
       
  1380       		group=default,
       
  1381       		height=2,
       
  1382       		label="7: 41aff6a42b75",
       
  1383       		pin=true,
       
  1384       		pos="1,7!",
       
  1385       		shape=circle,
       
  1386       		style=filled,
       
  1387       		width=2];
       
  1388       	6 -> 7;
       
  1389       	11	 [fillcolor="#7F7FFF",
       
  1390       		fixedsize=true,
       
  1391       		group=default,
       
  1392       		height=2,
       
  1393       		label="11: a224f2a4fb9f",
       
  1394       		pin=true,
       
  1395       		pos="1,11!",
       
  1396       		shape=circle,
       
  1397       		style=filled,
       
  1398       		width=2];
       
  1399       	7 -> 11;
       
  1400       	14	 [fillcolor="#7F7FFF",
       
  1401       		fixedsize=true,
       
  1402       		group=default,
       
  1403       		height=2,
       
  1404       		label="14: a44c85f957d3",
       
  1405       		pin=true,
       
  1406       		pos="1,14!",
       
  1407       		shape=pentagon,
       
  1408       		style=filled,
       
  1409       		width=2];
       
  1410       	11 -> 14;
       
  1411       	16	 [fillcolor="#7F7FFF",
       
  1412       		fixedsize=true,
       
  1413       		group=default,
       
  1414       		height=2,
       
  1415       		label="16: ee942144f952",
       
  1416       		pin=true,
       
  1417       		pos="1,16!",
       
  1418       		shape=pentagon,
       
  1419       		style=filled,
       
  1420       		width=2];
       
  1421       	14 -> 16;
       
  1422       }
   728 
  1423 
   729 We can push this evolution to remote.
  1424 We can push this evolution to remote.
   730 
  1425 
   731   $ hg push remote
  1426   $ hg push remote
   732   pushing to $TESTTMP/remote (glob)
  1427   pushing to $TESTTMP/remote (glob)
   795   o  9ca060c80d74 (public): SPAM
  1490   o  9ca060c80d74 (public): SPAM
   796   |
  1491   |
   797   o  7e82d3f3c2cb (public): Monthy Python Shopping list
  1492   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   798   
  1493   
   799 
  1494 
       
  1495   $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore
       
  1496   .. graphviz::
       
  1497   
       
  1498       strict digraph  {
       
  1499       	graph [rankdir=LR,
       
  1500       		splines=polyline
       
  1501       	];
       
  1502       	node [label="\N"];
       
  1503       	0	 [fillcolor="#7F7FFF",
       
  1504       		fixedsize=true,
       
  1505       		group=default,
       
  1506       		height=2,
       
  1507       		label="0: 7e82d3f3c2cb",
       
  1508       		pin=true,
       
  1509       		pos="1,0!",
       
  1510       		shape=circle,
       
  1511       		style=filled,
       
  1512       		width=2];
       
  1513       	5	 [fillcolor="#7F7FFF",
       
  1514       		fixedsize=true,
       
  1515       		group=default,
       
  1516       		height=2,
       
  1517       		label="5: 9ca060c80d74",
       
  1518       		pin=true,
       
  1519       		pos="1,5!",
       
  1520       		shape=circle,
       
  1521       		style=filled,
       
  1522       		width=2];
       
  1523       	0 -> 5;
       
  1524       	6	 [fillcolor="#7F7FFF",
       
  1525       		fixedsize=true,
       
  1526       		group=default,
       
  1527       		height=2,
       
  1528       		label="6: dfd3a2d7691e",
       
  1529       		pin=true,
       
  1530       		pos="1,6!",
       
  1531       		shape=circle,
       
  1532       		style=filled,
       
  1533       		width=2];
       
  1534       	5 -> 6;
       
  1535       	7	 [fillcolor="#7F7FFF",
       
  1536       		fixedsize=true,
       
  1537       		group=default,
       
  1538       		height=2,
       
  1539       		label="7: 41aff6a42b75",
       
  1540       		pin=true,
       
  1541       		pos="1,7!",
       
  1542       		shape=circle,
       
  1543       		style=filled,
       
  1544       		width=2];
       
  1545       	6 -> 7;
       
  1546       	11	 [fillcolor="#7F7FFF",
       
  1547       		fixedsize=true,
       
  1548       		group=default,
       
  1549       		height=2,
       
  1550       		label="11: a224f2a4fb9f",
       
  1551       		pin=true,
       
  1552       		pos="1,11!",
       
  1553       		shape=circle,
       
  1554       		style=filled,
       
  1555       		width=2];
       
  1556       	7 -> 11;
       
  1557       	14	 [fillcolor="#7F7FFF",
       
  1558       		fixedsize=true,
       
  1559       		group=default,
       
  1560       		height=2,
       
  1561       		label="14: a44c85f957d3",
       
  1562       		pin=true,
       
  1563       		pos="1,14!",
       
  1564       		shape=pentagon,
       
  1565       		style=filled,
       
  1566       		width=2];
       
  1567       	11 -> 14;
       
  1568       	16	 [fillcolor="#7F7FFF",
       
  1569       		fixedsize=true,
       
  1570       		group=default,
       
  1571       		height=2,
       
  1572       		label="16: ee942144f952",
       
  1573       		pin=true,
       
  1574       		pos="1,16!",
       
  1575       		shape=pentagon,
       
  1576       		style=filled,
       
  1577       		width=2];
       
  1578       	14 -> 16;
       
  1579       	17	 [fillcolor="#7F7FFF",
       
  1580       		fixedsize=true,
       
  1581       		group=default,
       
  1582       		height=2,
       
  1583       		label="17: 99f039c5ec9e",
       
  1584       		pin=true,
       
  1585       		pos="1,17!",
       
  1586       		shape=pentagon,
       
  1587       		style=filled,
       
  1588       		width=2];
       
  1589       	16 -> 17;
       
  1590       }
       
  1591 
   800 In the mean time I noticed you can't buy animals in a super market and I prune the animal changeset:
  1592 In the mean time I noticed you can't buy animals in a super market and I prune the animal changeset:
   801 
  1593 
   802   $ hg prune ee942144f952
  1594   $ hg prune ee942144f952
   803   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
  1595   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   804   working directory now at a44c85f957d3
  1596   working directory now at a44c85f957d3
   824   |
  1616   |
   825   o  9ca060c80d74 (public): SPAM
  1617   o  9ca060c80d74 (public): SPAM
   826   |
  1618   |
   827   o  7e82d3f3c2cb (public): Monthy Python Shopping list
  1619   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   828   
  1620   
       
  1621 
       
  1622   $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore
       
  1623   .. graphviz::
       
  1624   
       
  1625       strict digraph  {
       
  1626       	graph [rankdir=LR,
       
  1627       		splines=polyline
       
  1628       	];
       
  1629       	node [label="\N"];
       
  1630       	0	 [fillcolor="#7F7FFF",
       
  1631       		fixedsize=true,
       
  1632       		group=default,
       
  1633       		height=2,
       
  1634       		label="0: 7e82d3f3c2cb",
       
  1635       		pin=true,
       
  1636       		pos="1,0!",
       
  1637       		shape=circle,
       
  1638       		style=filled,
       
  1639       		width=2];
       
  1640       	5	 [fillcolor="#7F7FFF",
       
  1641       		fixedsize=true,
       
  1642       		group=default,
       
  1643       		height=2,
       
  1644       		label="5: 9ca060c80d74",
       
  1645       		pin=true,
       
  1646       		pos="1,5!",
       
  1647       		shape=circle,
       
  1648       		style=filled,
       
  1649       		width=2];
       
  1650       	0 -> 5;
       
  1651       	6	 [fillcolor="#7F7FFF",
       
  1652       		fixedsize=true,
       
  1653       		group=default,
       
  1654       		height=2,
       
  1655       		label="6: dfd3a2d7691e",
       
  1656       		pin=true,
       
  1657       		pos="1,6!",
       
  1658       		shape=circle,
       
  1659       		style=filled,
       
  1660       		width=2];
       
  1661       	5 -> 6;
       
  1662       	7	 [fillcolor="#7F7FFF",
       
  1663       		fixedsize=true,
       
  1664       		group=default,
       
  1665       		height=2,
       
  1666       		label="7: 41aff6a42b75",
       
  1667       		pin=true,
       
  1668       		pos="1,7!",
       
  1669       		shape=circle,
       
  1670       		style=filled,
       
  1671       		width=2];
       
  1672       	6 -> 7;
       
  1673       	11	 [fillcolor="#7F7FFF",
       
  1674       		fixedsize=true,
       
  1675       		group=default,
       
  1676       		height=2,
       
  1677       		label="11: a224f2a4fb9f",
       
  1678       		pin=true,
       
  1679       		pos="1,11!",
       
  1680       		shape=circle,
       
  1681       		style=filled,
       
  1682       		width=2];
       
  1683       	7 -> 11;
       
  1684       	14	 [fillcolor="#7F7FFF",
       
  1685       		fixedsize=true,
       
  1686       		group=default,
       
  1687       		height=2,
       
  1688       		label="14: a44c85f957d3",
       
  1689       		pin=true,
       
  1690       		pos="1,14!",
       
  1691       		shape=pentagon,
       
  1692       		style=filled,
       
  1693       		width=2];
       
  1694       	11 -> 14;
       
  1695       	16	 [fillcolor="#DFDFFF",
       
  1696       		fixedsize=true,
       
  1697       		group=default_alt,
       
  1698       		height=2,
       
  1699       		label="16: ee942144f952",
       
  1700       		pin=true,
       
  1701       		pos="2,16!",
       
  1702       		shape=pentagon,
       
  1703       		style="dotted, filled",
       
  1704       		width=2];
       
  1705       	14 -> 16;
       
  1706       	17	 [fillcolor="#FF3535",
       
  1707       		fixedsize=true,
       
  1708       		group=default_alt,
       
  1709       		height=2,
       
  1710       		label="17: 99f039c5ec9e",
       
  1711       		pin=true,
       
  1712       		pos="2,17!",
       
  1713       		shape=pentagon,
       
  1714       		style=filled,
       
  1715       		width=2];
       
  1716       	16 -> 17;
       
  1717       }
       
  1718 
   829   $ hg log -r "orphan()"
  1719   $ hg log -r "orphan()"
   830   99f039c5ec9e (draft): SPAM SPAM SPAM
  1720   99f039c5ec9e (draft): SPAM SPAM SPAM
       
  1721 
       
  1722   $ hg graphviz -r "orphan()" --sphinx-directive --rankdir LR #ignore
       
  1723   .. graphviz::
       
  1724   
       
  1725       strict digraph  {
       
  1726       	graph [rankdir=LR,
       
  1727       		splines=polyline
       
  1728       	];
       
  1729       	node [label="\N"];
       
  1730       	17	 [fillcolor="#FF3535",
       
  1731       		fixedsize=true,
       
  1732       		group=default_alt,
       
  1733       		height=2,
       
  1734       		label="17: 99f039c5ec9e",
       
  1735       		pin=true,
       
  1736       		pos="1,17!",
       
  1737       		shape=pentagon,
       
  1738       		style=filled,
       
  1739       		width=2];
       
  1740       }
   831 
  1741 
   832   $ hg evolve
  1742   $ hg evolve
   833   move:[15] SPAM SPAM SPAM
  1743   move:[15] SPAM SPAM SPAM
   834   atop:[12] bathroom stuff
  1744   atop:[12] bathroom stuff
   835   merging shopping
  1745   merging shopping
   848   |
  1758   |
   849   o  9ca060c80d74 (public): SPAM
  1759   o  9ca060c80d74 (public): SPAM
   850   |
  1760   |
   851   o  7e82d3f3c2cb (public): Monthy Python Shopping list
  1761   o  7e82d3f3c2cb (public): Monthy Python Shopping list
   852   
  1762   
       
  1763 
       
  1764   $ hg graphviz -r "all()" --sphinx-directive --rankdir LR #ignore
       
  1765   .. graphviz::
       
  1766   
       
  1767       strict digraph  {
       
  1768       	graph [rankdir=LR,
       
  1769       		splines=polyline
       
  1770       	];
       
  1771       	node [label="\N"];
       
  1772       	0	 [fillcolor="#7F7FFF",
       
  1773       		fixedsize=true,
       
  1774       		group=default,
       
  1775       		height=2,
       
  1776       		label="0: 7e82d3f3c2cb",
       
  1777       		pin=true,
       
  1778       		pos="1,0!",
       
  1779       		shape=circle,
       
  1780       		style=filled,
       
  1781       		width=2];
       
  1782       	5	 [fillcolor="#7F7FFF",
       
  1783       		fixedsize=true,
       
  1784       		group=default,
       
  1785       		height=2,
       
  1786       		label="5: 9ca060c80d74",
       
  1787       		pin=true,
       
  1788       		pos="1,5!",
       
  1789       		shape=circle,
       
  1790       		style=filled,
       
  1791       		width=2];
       
  1792       	0 -> 5;
       
  1793       	6	 [fillcolor="#7F7FFF",
       
  1794       		fixedsize=true,
       
  1795       		group=default,
       
  1796       		height=2,
       
  1797       		label="6: dfd3a2d7691e",
       
  1798       		pin=true,
       
  1799       		pos="1,6!",
       
  1800       		shape=circle,
       
  1801       		style=filled,
       
  1802       		width=2];
       
  1803       	5 -> 6;
       
  1804       	7	 [fillcolor="#7F7FFF",
       
  1805       		fixedsize=true,
       
  1806       		group=default,
       
  1807       		height=2,
       
  1808       		label="7: 41aff6a42b75",
       
  1809       		pin=true,
       
  1810       		pos="1,7!",
       
  1811       		shape=circle,
       
  1812       		style=filled,
       
  1813       		width=2];
       
  1814       	6 -> 7;
       
  1815       	11	 [fillcolor="#7F7FFF",
       
  1816       		fixedsize=true,
       
  1817       		group=default,
       
  1818       		height=2,
       
  1819       		label="11: a224f2a4fb9f",
       
  1820       		pin=true,
       
  1821       		pos="1,11!",
       
  1822       		shape=circle,
       
  1823       		style=filled,
       
  1824       		width=2];
       
  1825       	7 -> 11;
       
  1826       	14	 [fillcolor="#7F7FFF",
       
  1827       		fixedsize=true,
       
  1828       		group=default,
       
  1829       		height=2,
       
  1830       		label="14: a44c85f957d3",
       
  1831       		pin=true,
       
  1832       		pos="1,14!",
       
  1833       		shape=pentagon,
       
  1834       		style=filled,
       
  1835       		width=2];
       
  1836       	11 -> 14;
       
  1837       	18	 [fillcolor="#7F7FFF",
       
  1838       		fixedsize=true,
       
  1839       		group=default,
       
  1840       		height=2,
       
  1841       		label="18: 40aa40daeefb",
       
  1842       		pin=true,
       
  1843       		pos="1,18!",
       
  1844       		shape=pentagon,
       
  1845       		style=filled,
       
  1846       		width=2];
       
  1847       	14 -> 18;
       
  1848       }
       
  1849 
   853 Handling Divergent amend
  1850 Handling Divergent amend
   854 ----------------------------------------------
  1851 ----------------------------------------------
   855 
  1852 
   856 We can detect that multiple diverging amendments have been made.
  1853 We can detect that multiple diverging amendments have been made.
   857 The `evolve` command can solve this situation. But all corner case are not
  1854 The `evolve` command can solve this situation. But all corner case are not