tests/test-commit-amend.t
changeset 35393 4441705b7111
parent 35244 98f97eb20597
child 35709 1a09dad8b85a
equal deleted inserted replaced
35392:5feb782c7a95 35393:4441705b7111
    39 
    39 
    40   $ echo a >> a
    40   $ echo a >> a
    41   $ HGEDITOR="\"sh\" \"`pwd`/editor.sh\"" hg commit --amend -m 'amend base1'
    41   $ HGEDITOR="\"sh\" \"`pwd`/editor.sh\"" hg commit --amend -m 'amend base1'
    42   pretxncommit 43f1ba15f28a50abf0aae529cf8a16bfced7b149
    42   pretxncommit 43f1ba15f28a50abf0aae529cf8a16bfced7b149
    43   43f1ba15f28a tip
    43   43f1ba15f28a tip
    44   saved backup bundle to $TESTTMP/.hg/strip-backup/489edb5b847d-5ab4f721-amend.hg (glob)
    44   saved backup bundle to $TESTTMP/.hg/strip-backup/489edb5b847d-5ab4f721-amend.hg
    45   $ echo 'pretxncommit.foo = ' >> $HGRCPATH
    45   $ echo 'pretxncommit.foo = ' >> $HGRCPATH
    46   $ hg diff -c .
    46   $ hg diff -c .
    47   diff -r ad120869acf0 -r 43f1ba15f28a a
    47   diff -r ad120869acf0 -r 43f1ba15f28a a
    48   --- a/a	Thu Jan 01 00:00:00 1970 +0000
    48   --- a/a	Thu Jan 01 00:00:00 1970 +0000
    49   +++ b/a	Thu Jan 01 00:00:00 1970 +0000
    49   +++ b/a	Thu Jan 01 00:00:00 1970 +0000
    97   update: (current)
    97   update: (current)
    98   phases: 2 draft
    98   phases: 2 draft
    99 
    99 
   100 Add new file along with modified existing file:
   100 Add new file along with modified existing file:
   101   $ hg ci --amend -m 'amend base1 new file'
   101   $ hg ci --amend -m 'amend base1 new file'
   102   saved backup bundle to $TESTTMP/.hg/strip-backup/43f1ba15f28a-007467c2-amend.hg (glob)
   102   saved backup bundle to $TESTTMP/.hg/strip-backup/43f1ba15f28a-007467c2-amend.hg
   103 
   103 
   104 Remove file that was added in amended commit:
   104 Remove file that was added in amended commit:
   105 (and test logfile option)
   105 (and test logfile option)
   106 (and test that logfile option do not trigger an editor)
   106 (and test that logfile option do not trigger an editor)
   107 
   107 
   108   $ hg rm b
   108   $ hg rm b
   109   $ echo 'amend base1 remove new file' > ../logfile
   109   $ echo 'amend base1 remove new file' > ../logfile
   110   $ HGEDITOR="\"sh\" \"`pwd`/editor.sh\"" hg ci --amend --logfile ../logfile
   110   $ HGEDITOR="\"sh\" \"`pwd`/editor.sh\"" hg ci --amend --logfile ../logfile
   111   saved backup bundle to $TESTTMP/.hg/strip-backup/c16295aaf401-1ada9901-amend.hg (glob)
   111   saved backup bundle to $TESTTMP/.hg/strip-backup/c16295aaf401-1ada9901-amend.hg
   112 
   112 
   113   $ hg cat b
   113   $ hg cat b
   114   b: no such file in rev 47343646fa3d
   114   b: no such file in rev 47343646fa3d
   115   [1]
   115   [1]
   116 
   116 
   126   1 changesets found
   126   1 changesets found
   127   uncompressed size of bundle content:
   127   uncompressed size of bundle content:
   128        254 (changelog)
   128        254 (changelog)
   129        163 (manifests)
   129        163 (manifests)
   130        131  a
   130        131  a
   131   saved backup bundle to $TESTTMP/.hg/strip-backup/47343646fa3d-c2758885-amend.hg (glob)
   131   saved backup bundle to $TESTTMP/.hg/strip-backup/47343646fa3d-c2758885-amend.hg
   132   1 changesets found
   132   1 changesets found
   133   uncompressed size of bundle content:
   133   uncompressed size of bundle content:
   134        250 (changelog)
   134        250 (changelog)
   135        163 (manifests)
   135        163 (manifests)
   136        131  a
   136        131  a
   173   > env | grep HGEDITFORM
   173   > env | grep HGEDITFORM
   174   > true
   174   > true
   175   > EOF
   175   > EOF
   176   $ HGEDITOR="sh .hg/checkeditform.sh" hg ci --amend -u foo -d '1 0'
   176   $ HGEDITOR="sh .hg/checkeditform.sh" hg ci --amend -u foo -d '1 0'
   177   HGEDITFORM=commit.amend.normal
   177   HGEDITFORM=commit.amend.normal
   178   saved backup bundle to $TESTTMP/.hg/strip-backup/401431e913a1-5e8e532c-amend.hg (glob)
   178   saved backup bundle to $TESTTMP/.hg/strip-backup/401431e913a1-5e8e532c-amend.hg
   179   $ echo a >> a
   179   $ echo a >> a
   180   $ hg ci --amend -u foo -d '1 0'
   180   $ hg ci --amend -u foo -d '1 0'
   181   saved backup bundle to $TESTTMP/.hg/strip-backup/d96b1d28ae33-677e0afb-amend.hg (glob)
   181   saved backup bundle to $TESTTMP/.hg/strip-backup/d96b1d28ae33-677e0afb-amend.hg
   182   $ hg log -r .
   182   $ hg log -r .
   183   changeset:   1:a9a13940fc03
   183   changeset:   1:a9a13940fc03
   184   tag:         tip
   184   tag:         tip
   185   user:        foo
   185   user:        foo
   186   date:        Thu Jan 01 00:00:01 1970 +0000
   186   date:        Thu Jan 01 00:00:01 1970 +0000
   270   1 changesets found
   270   1 changesets found
   271   uncompressed size of bundle content:
   271   uncompressed size of bundle content:
   272        249 (changelog)
   272        249 (changelog)
   273        163 (manifests)
   273        163 (manifests)
   274        133  a
   274        133  a
   275   saved backup bundle to $TESTTMP/.hg/strip-backup/a9a13940fc03-7c2e8674-amend.hg (glob)
   275   saved backup bundle to $TESTTMP/.hg/strip-backup/a9a13940fc03-7c2e8674-amend.hg
   276   1 changesets found
   276   1 changesets found
   277   uncompressed size of bundle content:
   277   uncompressed size of bundle content:
   278        257 (changelog)
   278        257 (changelog)
   279        163 (manifests)
   279        163 (manifests)
   280        133  a
   280        133  a
   306   1 changesets found
   306   1 changesets found
   307   uncompressed size of bundle content:
   307   uncompressed size of bundle content:
   308        257 (changelog)
   308        257 (changelog)
   309        163 (manifests)
   309        163 (manifests)
   310        133  a
   310        133  a
   311   saved backup bundle to $TESTTMP/.hg/strip-backup/64a124ba1b44-10374b8f-amend.hg (glob)
   311   saved backup bundle to $TESTTMP/.hg/strip-backup/64a124ba1b44-10374b8f-amend.hg
   312   1 changesets found
   312   1 changesets found
   313   uncompressed size of bundle content:
   313   uncompressed size of bundle content:
   314        257 (changelog)
   314        257 (changelog)
   315        163 (manifests)
   315        163 (manifests)
   316        135  a
   316        135  a
   333 Moving bookmarks, preserve active bookmark:
   333 Moving bookmarks, preserve active bookmark:
   334 
   334 
   335   $ hg book book1
   335   $ hg book book1
   336   $ hg book book2
   336   $ hg book book2
   337   $ hg ci --amend -m 'move bookmarks'
   337   $ hg ci --amend -m 'move bookmarks'
   338   saved backup bundle to $TESTTMP/.hg/strip-backup/7892795b8e38-3fb46217-amend.hg (glob)
   338   saved backup bundle to $TESTTMP/.hg/strip-backup/7892795b8e38-3fb46217-amend.hg
   339   $ hg book
   339   $ hg book
   340      book1                     1:8311f17e2616
   340      book1                     1:8311f17e2616
   341    * book2                     1:8311f17e2616
   341    * book2                     1:8311f17e2616
   342   $ echo a >> a
   342   $ echo a >> a
   343   $ hg ci --amend -m 'move bookmarks'
   343   $ hg ci --amend -m 'move bookmarks'
   344   saved backup bundle to $TESTTMP/.hg/strip-backup/8311f17e2616-f0504fe3-amend.hg (glob)
   344   saved backup bundle to $TESTTMP/.hg/strip-backup/8311f17e2616-f0504fe3-amend.hg
   345   $ hg book
   345   $ hg book
   346      book1                     1:a3b65065808c
   346      book1                     1:a3b65065808c
   347    * book2                     1:a3b65065808c
   347    * book2                     1:a3b65065808c
   348 
   348 
   349 abort does not loose bookmarks
   349 abort does not loose bookmarks
   373   $ echo a >> a
   373   $ echo a >> a
   374   $ hg ci -m 'branch foo'
   374   $ hg ci -m 'branch foo'
   375   $ hg branch default -f
   375   $ hg branch default -f
   376   marked working directory as branch default
   376   marked working directory as branch default
   377   $ hg ci --amend -m 'back to default'
   377   $ hg ci --amend -m 'back to default'
   378   saved backup bundle to $TESTTMP/.hg/strip-backup/f8339a38efe1-c18453c9-amend.hg (glob)
   378   saved backup bundle to $TESTTMP/.hg/strip-backup/f8339a38efe1-c18453c9-amend.hg
   379   $ hg branches
   379   $ hg branches
   380   default                        2:9c07515f2650
   380   default                        2:9c07515f2650
   381 
   381 
   382 Close branch:
   382 Close branch:
   383 
   383 
   389   $ hg ci -Am 'fork'
   389   $ hg ci -Am 'fork'
   390   adding b
   390   adding b
   391   $ echo b >> b
   391   $ echo b >> b
   392   $ hg ci -mb
   392   $ hg ci -mb
   393   $ hg ci --amend --close-branch -m 'closing branch foo'
   393   $ hg ci --amend --close-branch -m 'closing branch foo'
   394   saved backup bundle to $TESTTMP/.hg/strip-backup/c962248fa264-54245dc7-amend.hg (glob)
   394   saved backup bundle to $TESTTMP/.hg/strip-backup/c962248fa264-54245dc7-amend.hg
   395 
   395 
   396 Same thing, different code path:
   396 Same thing, different code path:
   397 
   397 
   398   $ echo b >> b
   398   $ echo b >> b
   399   $ hg ci -m 'reopen branch'
   399   $ hg ci -m 'reopen branch'
   400   reopening closed branch head 4
   400   reopening closed branch head 4
   401   $ echo b >> b
   401   $ echo b >> b
   402   $ hg ci --amend --close-branch
   402   $ hg ci --amend --close-branch
   403   saved backup bundle to $TESTTMP/.hg/strip-backup/027371728205-b900d9fa-amend.hg (glob)
   403   saved backup bundle to $TESTTMP/.hg/strip-backup/027371728205-b900d9fa-amend.hg
   404   $ hg branches
   404   $ hg branches
   405   default                        2:9c07515f2650
   405   default                        2:9c07515f2650
   406 
   406 
   407 Refuse to amend during a merge:
   407 Refuse to amend during a merge:
   408 
   408 
   419 
   419 
   420   $ hg mv b c
   420   $ hg mv b c
   421   $ hg ci -m 'b -> c'
   421   $ hg ci -m 'b -> c'
   422   $ hg mv c d
   422   $ hg mv c d
   423   $ hg ci --amend -m 'b -> d'
   423   $ hg ci --amend -m 'b -> d'
   424   saved backup bundle to $TESTTMP/.hg/strip-backup/42f3f27a067d-f23cc9f7-amend.hg (glob)
   424   saved backup bundle to $TESTTMP/.hg/strip-backup/42f3f27a067d-f23cc9f7-amend.hg
   425   $ hg st --rev '.^' --copies d
   425   $ hg st --rev '.^' --copies d
   426   A d
   426   A d
   427     b
   427     b
   428   $ hg cp d e
   428   $ hg cp d e
   429   $ hg ci -m 'e = d'
   429   $ hg ci -m 'e = d'
   430   $ hg cp e f
   430   $ hg cp e f
   431   $ hg ci --amend -m 'f = d'
   431   $ hg ci --amend -m 'f = d'
   432   saved backup bundle to $TESTTMP/.hg/strip-backup/9198f73182d5-251d584a-amend.hg (glob)
   432   saved backup bundle to $TESTTMP/.hg/strip-backup/9198f73182d5-251d584a-amend.hg
   433   $ hg st --rev '.^' --copies f
   433   $ hg st --rev '.^' --copies f
   434   A f
   434   A f
   435     d
   435     d
   436 
   436 
   437   $ mv f f.orig
   437   $ mv f f.orig
   438   $ hg rm -A f
   438   $ hg rm -A f
   439   $ hg ci -m removef
   439   $ hg ci -m removef
   440   $ hg cp a f
   440   $ hg cp a f
   441   $ mv f.orig f
   441   $ mv f.orig f
   442   $ hg ci --amend -m replacef
   442   $ hg ci --amend -m replacef
   443   saved backup bundle to $TESTTMP/.hg/strip-backup/f0993ab6b482-eda301bf-amend.hg (glob)
   443   saved backup bundle to $TESTTMP/.hg/strip-backup/f0993ab6b482-eda301bf-amend.hg
   444   $ hg st --change . --copies
   444   $ hg st --change . --copies
   445   $ hg log -r . --template "{file_copies}\n"
   445   $ hg log -r . --template "{file_copies}\n"
   446   
   446   
   447 
   447 
   448 Move added file (issue3410):
   448 Move added file (issue3410):
   450   $ echo g >> g
   450   $ echo g >> g
   451   $ hg ci -Am g
   451   $ hg ci -Am g
   452   adding g
   452   adding g
   453   $ hg mv g h
   453   $ hg mv g h
   454   $ hg ci --amend
   454   $ hg ci --amend
   455   saved backup bundle to $TESTTMP/.hg/strip-backup/58585e3f095c-0f5ebcda-amend.hg (glob)
   455   saved backup bundle to $TESTTMP/.hg/strip-backup/58585e3f095c-0f5ebcda-amend.hg
   456   $ hg st --change . --copies h
   456   $ hg st --change . --copies h
   457   A h
   457   A h
   458   $ hg log -r . --template "{file_copies}\n"
   458   $ hg log -r . --template "{file_copies}\n"
   459   
   459   
   460 
   460 
   470   marked working directory as branch a
   470   marked working directory as branch a
   471   (branches are permanent and global, did you want a bookmark?)
   471   (branches are permanent and global, did you want a bookmark?)
   472   $ echo a >> a
   472   $ echo a >> a
   473   $ hg ci -ma
   473   $ hg ci -ma
   474   $ hg ci --amend -m "a'"
   474   $ hg ci --amend -m "a'"
   475   saved backup bundle to $TESTTMP/.hg/strip-backup/39a162f1d65e-9dfe13d8-amend.hg (glob)
   475   saved backup bundle to $TESTTMP/.hg/strip-backup/39a162f1d65e-9dfe13d8-amend.hg
   476   $ hg log -r . --template "{branch}\n"
   476   $ hg log -r . --template "{branch}\n"
   477   a
   477   a
   478   $ hg ci --amend -m "a''"
   478   $ hg ci --amend -m "a''"
   479   saved backup bundle to $TESTTMP/.hg/strip-backup/d5ca7b1ac72b-0b4c1a34-amend.hg (glob)
   479   saved backup bundle to $TESTTMP/.hg/strip-backup/d5ca7b1ac72b-0b4c1a34-amend.hg
   480   $ hg log -r . --template "{branch}\n"
   480   $ hg log -r . --template "{branch}\n"
   481   a
   481   a
   482 
   482 
   483 Also preserve other entries in the dict that are in the old commit,
   483 Also preserve other entries in the dict that are in the old commit,
   484 first graft something so there's an additional entry:
   484 first graft something so there's an additional entry:
   491   $ hg up 11
   491   $ hg up 11
   492   5 files updated, 0 files merged, 1 files removed, 0 files unresolved
   492   5 files updated, 0 files merged, 1 files removed, 0 files unresolved
   493   $ hg graft 12
   493   $ hg graft 12
   494   grafting 12:2647734878ef "fork" (tip)
   494   grafting 12:2647734878ef "fork" (tip)
   495   $ hg ci --amend -m 'graft amend'
   495   $ hg ci --amend -m 'graft amend'
   496   saved backup bundle to $TESTTMP/.hg/strip-backup/fe8c6f7957ca-25638666-amend.hg (glob)
   496   saved backup bundle to $TESTTMP/.hg/strip-backup/fe8c6f7957ca-25638666-amend.hg
   497   $ hg log -r . --debug | grep extra
   497   $ hg log -r . --debug | grep extra
   498   extra:       amend_source=fe8c6f7957ca1665ed77496ed7a07657d469ac60
   498   extra:       amend_source=fe8c6f7957ca1665ed77496ed7a07657d469ac60
   499   extra:       branch=a
   499   extra:       branch=a
   500   extra:       source=2647734878ef0236dda712fae9c1651cf694ea8a
   500   extra:       source=2647734878ef0236dda712fae9c1651cf694ea8a
   501 
   501 
  1110 
  1110 
  1111   $ hg branch newdirname
  1111   $ hg branch newdirname
  1112   marked working directory as branch newdirname
  1112   marked working directory as branch newdirname
  1113   (branches are permanent and global, did you want a bookmark?)
  1113   (branches are permanent and global, did you want a bookmark?)
  1114   $ hg mv olddirname newdirname
  1114   $ hg mv olddirname newdirname
  1115   moving olddirname/commonfile.py to newdirname/commonfile.py (glob)
  1115   moving olddirname/commonfile.py to newdirname/commonfile.py
  1116   $ hg ci -m rename
  1116   $ hg ci -m rename
  1117 
  1117 
  1118   $ hg update default
  1118   $ hg update default
  1119   1 files updated, 0 files merged, 1 files removed, 0 files unresolved
  1119   1 files updated, 0 files merged, 1 files removed, 0 files unresolved
  1120   $ echo line1 > olddirname/newfile.py
  1120   $ echo line1 > olddirname/newfile.py
  1128   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
  1128   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
  1129   (branch merge, don't forget to commit)
  1129   (branch merge, don't forget to commit)
  1130   $ hg ci -m add
  1130   $ hg ci -m add
  1131   $ 
  1131   $ 
  1132   $ hg debugrename newdirname/newfile.py
  1132   $ hg debugrename newdirname/newfile.py
  1133   newdirname/newfile.py renamed from olddirname/newfile.py:690b295714aed510803d3020da9c70fca8336def (glob)
  1133   newdirname/newfile.py renamed from olddirname/newfile.py:690b295714aed510803d3020da9c70fca8336def
  1134   $ hg status -C --change .
  1134   $ hg status -C --change .
  1135   A newdirname/newfile.py
  1135   A newdirname/newfile.py
  1136   $ hg status -C --rev 1
  1136   $ hg status -C --rev 1
  1137   A newdirname/newfile.py
  1137   A newdirname/newfile.py
  1138   $ hg status -C --rev 2
  1138   $ hg status -C --rev 2
  1147        0         0      89     -1       3 34a4d536c0c0 000000000000 000000000000
  1147        0         0      89     -1       3 34a4d536c0c0 000000000000 000000000000
  1148 
  1148 
  1149   $ echo a >> newdirname/commonfile.py
  1149   $ echo a >> newdirname/commonfile.py
  1150   $ hg ci --amend -m bug
  1150   $ hg ci --amend -m bug
  1151   $ hg debugrename newdirname/newfile.py
  1151   $ hg debugrename newdirname/newfile.py
  1152   newdirname/newfile.py renamed from olddirname/newfile.py:690b295714aed510803d3020da9c70fca8336def (glob)
  1152   newdirname/newfile.py renamed from olddirname/newfile.py:690b295714aed510803d3020da9c70fca8336def
  1153   $ hg debugindex newdirname/newfile.py
  1153   $ hg debugindex newdirname/newfile.py
  1154      rev    offset  length  delta linkrev nodeid       p1           p2
  1154      rev    offset  length  delta linkrev nodeid       p1           p2
  1155        0         0      89     -1       3 34a4d536c0c0 000000000000 000000000000
  1155        0         0      89     -1       3 34a4d536c0c0 000000000000 000000000000
  1156 
  1156 
  1157 #if execbit
  1157 #if execbit