tests/test-evolve.t
changeset 1358 3f5db977d46f
parent 1357 3bb7a080da4d
child 1359 82dd98428b8d
equal deleted inserted replaced
1357:3bb7a080da4d 1358:3f5db977d46f
    20   >    echo "$1" > "$1"
    20   >    echo "$1" > "$1"
    21   >    hg add "$1"
    21   >    hg add "$1"
    22   >    hg ci -m "add $1"
    22   >    hg ci -m "add $1"
    23   > }
    23   > }
    24 
    24 
       
    25   $ mkstack() {
       
    26   >    # Creates a stack of commit based on $1 with messages from $2, $3 ..
       
    27   >    hg update $1 -C
       
    28   >    shift
       
    29   >    mkcommits $*
       
    30   > }
       
    31 
    25   $ glog() {
    32   $ glog() {
    26   >   hg glog --template '{rev}:{node|short}@{branch}({phase}) {desc|firstline}\n' "$@"
    33   >   hg glog --template '{rev}:{node|short}@{branch}({phase}) {desc|firstline}\n' "$@"
       
    34   > }
       
    35 
       
    36   $ shaof() {
       
    37   >   hg log -T {node} -r "first(desc($1))"
       
    38   > }
       
    39 
       
    40   $ mkcommits() {
       
    41   >   for i in $@; do mkcommit $i ; done
    27   > }
    42   > }
    28 
    43 
    29 various init
    44 various init
    30 
    45 
    31   $ hg init local
    46   $ hg init local
  1076   atop:[25] add j1
  1091   atop:[25] add j1
  1077   move:[23] add j3
  1092   move:[23] add j3
  1078   atop:[26] add j2
  1093   atop:[26] add j2
  1079   working directory is now at 928e4c317356
  1094   working directory is now at 928e4c317356
  1080 
  1095 
       
  1096 Cleanup to make the tree cleaner
       
  1097 
       
  1098   $ hg prune 20
       
  1099   1 changesets pruned
       
  1100   $ hg prune 26::
       
  1101   0 files updated, 0 files merged, 2 files removed, 0 files unresolved
       
  1102   working directory now at 4c0bc042ef3b
       
  1103   2 changesets pruned
       
  1104 
       
  1105 evolve --rev reorders the rev to solve instability. Harder case, obsolescence
       
  1106 accross three stacks in growing rev numbers. 
       
  1107   $ hg up -C 25
       
  1108   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
       
  1109   $ mkstack 25 s1_ s2_ s3_ >/dev/null
       
  1110   $ mkstack 25 s1prime s2prime >/dev/null
       
  1111   $ mkstack 25 s1second >/dev/null
       
  1112   $ hg prune `shaof s1_` -s `shaof s1prime`
       
  1113   1 changesets pruned
       
  1114   2 new unstable changesets
       
  1115   $ hg prune `shaof s1prime` -s `shaof s1second`
       
  1116   1 changesets pruned
       
  1117   1 new unstable changesets
       
  1118   $ hg prune `shaof s2_` -s `shaof s2prime`
       
  1119   1 changesets pruned
       
  1120 
       
  1121   $ glog -r "25::"
       
  1122   @  33:17b5b6ab3f43@default(draft) add s1second
       
  1123   |
       
  1124   | o  32:d694d85de729@default(draft) add s2prime
       
  1125   | |
       
  1126   | x  31:1ae988394dc5@default(draft) add s1prime
       
  1127   |/
       
  1128   | o  30:819245647e79@default(draft) add s3_
       
  1129   | |
       
  1130   | x  29:07a5fc5c1502@default(draft) add s2_
       
  1131   | |
       
  1132   | x  28:5ccaf4765b80@default(draft) add s1_
       
  1133   |/
       
  1134   o  25:4c0bc042ef3b@default(draft) add j1
       
  1135   |
       
  1136 
       
  1137   $ hg evolve --rev "25::"
       
  1138   move:[32] add s2prime
       
  1139   atop:[33] add s1second
       
  1140   move:[30] add s3_
       
  1141   atop:[34] add s2prime
       
  1142   working directory is now at dc79646e43b4
       
  1143   $ glog -r "25::"
       
  1144   @  35:dc79646e43b4@default(draft) add s3_
       
  1145   |
       
  1146   o  34:96f3ff6b7106@default(draft) add s2prime
       
  1147   |
       
  1148   o  33:17b5b6ab3f43@default(draft) add s1second
       
  1149   |
       
  1150   o  25:4c0bc042ef3b@default(draft) add j1
       
  1151   |
       
  1152 
       
  1153   $ hg prune 33::
       
  1154   0 files updated, 0 files merged, 3 files removed, 0 files unresolved
       
  1155   working directory now at 4c0bc042ef3b
       
  1156   3 changesets pruned
       
  1157