tests/test-histedit-obsolete.t
branchstable
changeset 19221 838c6b72928d
parent 19019 53060cc1b601
child 19473 10a0ae668fe6
equal deleted inserted replaced
19220:0890e6fd3e00 19221:838c6b72928d
    57   #  f, fold = use commit, but fold into previous commit (combines N and N-1)
    57   #  f, fold = use commit, but fold into previous commit (combines N and N-1)
    58   #  d, drop = remove commit from history
    58   #  d, drop = remove commit from history
    59   #  m, mess = edit message without changing commit content
    59   #  m, mess = edit message without changing commit content
    60   #
    60   #
    61   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
    61   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
    62   $ cat > commands.txt <<EOF
    62   $ hg histedit 1 --commands - --verbose <<EOF | grep histedit
    63   > pick 177f92b77385 2 c
    63   > pick 177f92b77385 2 c
    64   > drop d2ae7f538514 1 b
    64   > drop d2ae7f538514 1 b
    65   > pick 055a42cdd887 3 d
    65   > pick 055a42cdd887 3 d
    66   > fold e860deea161a 4 e
    66   > fold e860deea161a 4 e
    67   > pick 652413bf663e 5 f
    67   > pick 652413bf663e 5 f
    68   > EOF
    68   > EOF
    69   $ hg histedit 1 --commands commands.txt --verbose | grep histedit
       
    70   saved backup bundle to $TESTTMP/base/.hg/strip-backup/96e494a2d553-backup.hg (glob)
    69   saved backup bundle to $TESTTMP/base/.hg/strip-backup/96e494a2d553-backup.hg (glob)
    71   $ hg log --graph --hidden
    70   $ hg log --graph --hidden
    72   @  8:cacdfd884a93 f
    71   @  8:cacdfd884a93 f
    73   |
    72   |
    74   o  7:59d9f330561f d
    73   o  7:59d9f330561f d
    98 Ensure hidden revision does not prevent histedit
    97 Ensure hidden revision does not prevent histedit
    99 -------------------------------------------------
    98 -------------------------------------------------
   100 
    99 
   101 create an hidden revision
   100 create an hidden revision
   102 
   101 
   103   $ cat > commands.txt <<EOF
   102   $ hg histedit 6 --commands - << EOF
   104   > pick b346ab9a313d 6 c
   103   > pick b346ab9a313d 6 c
   105   > drop 59d9f330561f 7 d
   104   > drop 59d9f330561f 7 d
   106   > pick cacdfd884a93 8 f
   105   > pick cacdfd884a93 8 f
   107   > EOF
   106   > EOF
   108   $ hg histedit 6 --commands commands.txt
       
   109   0 files updated, 0 files merged, 3 files removed, 0 files unresolved
   107   0 files updated, 0 files merged, 3 files removed, 0 files unresolved
   110   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   108   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   111   $ hg log --graph
   109   $ hg log --graph
   112   @  9:c13eb81022ca f
   110   @  9:c13eb81022ca f
   113   |
   111   |
   115   |
   113   |
   116   o  0:cb9a9f314b8b a
   114   o  0:cb9a9f314b8b a
   117   
   115   
   118 check hidden revision are ignored (6 have hidden children 7 and 8)
   116 check hidden revision are ignored (6 have hidden children 7 and 8)
   119 
   117 
   120   $ cat > commands.txt <<EOF
   118   $ hg histedit 6 --commands - << EOF
   121   > pick b346ab9a313d 6 c
   119   > pick b346ab9a313d 6 c
   122   > pick c13eb81022ca 8 f
   120   > pick c13eb81022ca 8 f
   123   > EOF
   121   > EOF
   124   $ hg histedit 6 --commands commands.txt
       
   125   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   122   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   126 
   123 
   127 
   124 
   128 
   125 
   129 Test that rewriting leaving instability behind is allowed
   126 Test that rewriting leaving instability behind is allowed
   131 
   128 
   132   $ hg up '.^'
   129   $ hg up '.^'
   133   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   130   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   134   $ hg log -r 'children(.)'
   131   $ hg log -r 'children(.)'
   135   9:c13eb81022ca f (no-eol)
   132   9:c13eb81022ca f (no-eol)
   136   $ cat > commands.txt <<EOF
   133   $ hg histedit -r '.' --commands - <<EOF
   137   > edit b346ab9a313d 6 c
   134   > edit b346ab9a313d 6 c
   138   > EOF
   135   > EOF
   139   $ hg histedit -r '.' --commands commands.txt
       
   140   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   136   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   141   adding c
   137   adding c
   142   abort: Make changes as needed, you may commit or record as needed now.
   138   Make changes as needed, you may commit or record as needed now.
   143   When you are finished, run hg histedit --continue to resume.
   139   When you are finished, run hg histedit --continue to resume.
   144   [255]
   140   [1]
   145   $ echo c >> c
   141   $ echo c >> c
   146   $ hg histedit --continue
   142   $ hg histedit --continue
   147   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   143   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   148 
   144 
   149   $ hg log -r 'unstable()'
   145   $ hg log -r 'unstable()'
   150   9:c13eb81022ca f (no-eol)
   146   9:c13eb81022ca f (no-eol)
   151 
   147 
   152 stabilise
   148 stabilise
   153 
   149 
   154   $ hg rebase  -r 'unstable()' -d .
   150   $ hg rebase  -r 'unstable()' -d .
       
   151 
       
   152 Test dropping of changeset on the top of the stack
       
   153 -------------------------------------------------------
       
   154 
       
   155 Nothing is rewritten below, the working directory parent must be change for the
       
   156 dropped changeset to be hidden.
       
   157 
       
   158   $ cd ..
       
   159   $ hg clone base droplast
       
   160   updating to branch default
       
   161   3 files updated, 0 files merged, 0 files removed, 0 files unresolved
       
   162   $ cd droplast
       
   163   $ hg histedit -r '40db8afa467b' --commands - << EOF
       
   164   > pick 40db8afa467b 10 c
       
   165   > drop b449568bf7fc 11 f
       
   166   > EOF
       
   167   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
       
   168   $ hg log -G
       
   169   @  10:40db8afa467b c
       
   170   |
       
   171   o  0:cb9a9f314b8b a
       
   172   
       
   173 
       
   174 With rewritten ancestors
       
   175 
       
   176   $ echo e > e
       
   177   $ hg add e
       
   178   $ hg commit -m g
       
   179   $ echo f > f
       
   180   $ hg add f
       
   181   $ hg commit -m h
       
   182   $ hg histedit -r '40db8afa467b' --commands - << EOF
       
   183   > pick 47a8561c0449 12 g
       
   184   > pick 40db8afa467b 10 c
       
   185   > drop 1b3b05f35ff0 13 h
       
   186   > EOF
       
   187   0 files updated, 0 files merged, 3 files removed, 0 files unresolved
       
   188   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
       
   189   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
       
   190   $ hg log -G
       
   191   @  15:ee6544123ab8 c
       
   192   |
       
   193   o  14:269e713e9eae g
       
   194   |
       
   195   o  0:cb9a9f314b8b a
       
   196   
       
   197   $ cd ../base
       
   198 
   155 
   199 
   156 
   200 
   157 Test phases support
   201 Test phases support
   158 ===========================================
   202 ===========================================
   159 
   203 
   215 
   259 
   216 New-commit as draft (default)
   260 New-commit as draft (default)
   217 
   261 
   218   $ cp -r base simple-draft
   262   $ cp -r base simple-draft
   219   $ cd simple-draft
   263   $ cd simple-draft
   220   $ cat > commands.txt <<EOF
   264   $ hg histedit -r 'b449568bf7fc' --commands - << EOF
   221   > edit b449568bf7fc 11 f
   265   > edit b449568bf7fc 11 f
   222   > pick 6b70183d2492 12 g
   266   > pick 6b70183d2492 12 g
   223   > pick 7395e1ff83bd 13 h
   267   > pick 7395e1ff83bd 13 h
   224   > pick b605fb7503f2 14 i
   268   > pick b605fb7503f2 14 i
   225   > pick 3a6c53ee7f3d 15 j
   269   > pick 3a6c53ee7f3d 15 j
   226   > pick ee118ab9fa44 16 k
   270   > pick ee118ab9fa44 16 k
   227   > EOF
   271   > EOF
   228   $ hg histedit -r 'b449568bf7fc' --commands commands.txt
       
   229   0 files updated, 0 files merged, 6 files removed, 0 files unresolved
   272   0 files updated, 0 files merged, 6 files removed, 0 files unresolved
   230   adding f
   273   adding f
   231   abort: Make changes as needed, you may commit or record as needed now.
   274   Make changes as needed, you may commit or record as needed now.
   232   When you are finished, run hg histedit --continue to resume.
   275   When you are finished, run hg histedit --continue to resume.
   233   [255]
   276   [1]
   234   $ echo f >> f
   277   $ echo f >> f
   235   $ hg histedit --continue
   278   $ hg histedit --continue
   236   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   279   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   237   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   280   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   238   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   281   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   265   $ cd simple-secret
   308   $ cd simple-secret
   266   $ cat >> .hg/hgrc << EOF
   309   $ cat >> .hg/hgrc << EOF
   267   > [phases]
   310   > [phases]
   268   > new-commit=secret
   311   > new-commit=secret
   269   > EOF
   312   > EOF
   270   $ cat > commands.txt <<EOF
   313   $ hg histedit -r 'b449568bf7fc' --commands - << EOF
   271   > edit b449568bf7fc 11 f
   314   > edit b449568bf7fc 11 f
   272   > pick 6b70183d2492 12 g
   315   > pick 6b70183d2492 12 g
   273   > pick 7395e1ff83bd 13 h
   316   > pick 7395e1ff83bd 13 h
   274   > pick b605fb7503f2 14 i
   317   > pick b605fb7503f2 14 i
   275   > pick 3a6c53ee7f3d 15 j
   318   > pick 3a6c53ee7f3d 15 j
   276   > pick ee118ab9fa44 16 k
   319   > pick ee118ab9fa44 16 k
   277   > EOF
   320   > EOF
   278   $ hg histedit -r 'b449568bf7fc' --commands commands.txt
       
   279   0 files updated, 0 files merged, 6 files removed, 0 files unresolved
   321   0 files updated, 0 files merged, 6 files removed, 0 files unresolved
   280   adding f
   322   adding f
   281   abort: Make changes as needed, you may commit or record as needed now.
   323   Make changes as needed, you may commit or record as needed now.
   282   When you are finished, run hg histedit --continue to resume.
   324   When you are finished, run hg histedit --continue to resume.
   283   [255]
   325   [1]
   284   $ echo f >> f
   326   $ echo f >> f
   285   $ hg histedit --continue
   327   $ hg histedit --continue
   286   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   328   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   287   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   329   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   288   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   330   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   315 If a secret changeset is put before a draft one, all descendant should be secret.
   357 If a secret changeset is put before a draft one, all descendant should be secret.
   316 It seems more important to present the secret phase.
   358 It seems more important to present the secret phase.
   317 
   359 
   318   $ cp -r base reorder
   360   $ cp -r base reorder
   319   $ cd reorder
   361   $ cd reorder
   320   $ cat > commands.txt <<EOF
   362   $ hg histedit -r 'b449568bf7fc' --commands - << EOF
   321   > pick b449568bf7fc 11 f
   363   > pick b449568bf7fc 11 f
   322   > pick 3a6c53ee7f3d 15 j
   364   > pick 3a6c53ee7f3d 15 j
   323   > pick 6b70183d2492 12 g
   365   > pick 6b70183d2492 12 g
   324   > pick b605fb7503f2 14 i
   366   > pick b605fb7503f2 14 i
   325   > pick 7395e1ff83bd 13 h
   367   > pick 7395e1ff83bd 13 h
   326   > pick ee118ab9fa44 16 k
   368   > pick ee118ab9fa44 16 k
   327   > EOF
   369   > EOF
   328   $ hg histedit -r 'b449568bf7fc' --commands commands.txt
       
   329   0 files updated, 0 files merged, 5 files removed, 0 files unresolved
   370   0 files updated, 0 files merged, 5 files removed, 0 files unresolved
   330   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   371   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   331   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   372   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   332   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   373   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   333   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   374   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   363   $ cd folding
   404   $ cd folding
   364   $ cat >> .hg/hgrc << EOF
   405   $ cat >> .hg/hgrc << EOF
   365   > [phases]
   406   > [phases]
   366   > new-commit=secret
   407   > new-commit=secret
   367   > EOF
   408   > EOF
   368   $ cat > commands.txt <<EOF
   409   $ hg histedit -r 'b449568bf7fc' --commands - << EOF
   369   > pick 7395e1ff83bd 13 h
   410   > pick 7395e1ff83bd 13 h
   370   > fold b449568bf7fc 11 f
   411   > fold b449568bf7fc 11 f
   371   > pick 6b70183d2492 12 g
   412   > pick 6b70183d2492 12 g
   372   > fold 3a6c53ee7f3d 15 j
   413   > fold 3a6c53ee7f3d 15 j
   373   > pick b605fb7503f2 14 i
   414   > pick b605fb7503f2 14 i
   374   > fold ee118ab9fa44 16 k
   415   > fold ee118ab9fa44 16 k
   375   > EOF
   416   > EOF
   376   $ hg histedit -r 'b449568bf7fc' --commands commands.txt
       
   377   0 files updated, 0 files merged, 6 files removed, 0 files unresolved
   417   0 files updated, 0 files merged, 6 files removed, 0 files unresolved
   378   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   418   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   379   0 files updated, 0 files merged, 2 files removed, 0 files unresolved
   419   0 files updated, 0 files merged, 2 files removed, 0 files unresolved
   380   2 files updated, 0 files merged, 0 files removed, 0 files unresolved
   420   2 files updated, 0 files merged, 0 files removed, 0 files unresolved
   381   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   421   0 files updated, 0 files merged, 0 files removed, 0 files unresolved