tests/test-commit-amend.t
author Matt Harbison <matt_harbison@yahoo.com>
Fri, 03 Nov 2017 22:22:50 -0400
branchstable
changeset 34980 705d0f2bb677
parent 34867 7f183c643eb6
child 35244 98f97eb20597
permissions -rw-r--r--
pathutil: add doctests for canonpath() This is a followup to f445b10dc7fb. Since there's no way to ensure that more drive letters than C: exist, this seems like the only way to test it. This is enough to catch the f445b10dc7fb scenario, as well as CWD outside of the repo when the path isn't prefixed with path/to/repo.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
26927
0829ed3b75e1 test: use general delta for 'test-commit-amend.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26750
diff changeset
     1
  $ cat << EOF >> $HGRCPATH
0829ed3b75e1 test: use general delta for 'test-commit-amend.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26750
diff changeset
     2
  > [format]
0829ed3b75e1 test: use general delta for 'test-commit-amend.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26750
diff changeset
     3
  > usegeneraldelta=yes
0829ed3b75e1 test: use general delta for 'test-commit-amend.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26750
diff changeset
     4
  > EOF
0829ed3b75e1 test: use general delta for 'test-commit-amend.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26750
diff changeset
     5
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
     6
  $ hg init
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
     7
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
     8
Setup:
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
     9
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    10
  $ echo a >> a
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    11
  $ hg ci -Am 'base'
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    12
  adding a
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    13
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    14
Refuse to amend public csets:
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    15
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    16
  $ hg phase -r . -p
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    17
  $ hg ci --amend
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    18
  abort: cannot amend public changesets
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    19
  [255]
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    20
  $ hg phase -r . -f -d
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    21
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    22
  $ echo a >> a
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    23
  $ hg ci -Am 'base1'
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    24
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    25
Nothing to amend:
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    26
26750
9f9ec4abe700 cmdutil: make in-memory changes visible to external editor (issue4378)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26614
diff changeset
    27
  $ hg ci --amend -m 'base1'
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    28
  nothing changed
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    29
  [1]
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    30
17060
69fa0459dd3b test-commit-amend: adapt for Windows after fba17a64fa49
Adrian Buehlmann <adrian@cadifra.com>
parents: 17059
diff changeset
    31
  $ cat >> $HGRCPATH <<EOF
69fa0459dd3b test-commit-amend: adapt for Windows after fba17a64fa49
Adrian Buehlmann <adrian@cadifra.com>
parents: 17059
diff changeset
    32
  > [hooks]
17462
8085fed2bf0a tests: correct quoting of double quotes in here documents used to write hooks
Jim Hague <jim.hague@acm.org>
parents: 17461
diff changeset
    33
  > pretxncommit.foo = sh -c "echo \\"pretxncommit \$HG_NODE\\"; hg id -r \$HG_NODE"
17060
69fa0459dd3b test-commit-amend: adapt for Windows after fba17a64fa49
Adrian Buehlmann <adrian@cadifra.com>
parents: 17059
diff changeset
    34
  > EOF
17049
2440822446ce amend: disable hooks when creating intermediate commit (issue3501)
Idan Kamara <idankk86@gmail.com>
parents: 16630
diff changeset
    35
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    36
Amending changeset with changes in working dir:
17924
45bd0cd7ca04 amend: force editor only if old message is reused (issue3698)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17863
diff changeset
    37
(and check that --message does not trigger an editor)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    38
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    39
  $ echo a >> a
17924
45bd0cd7ca04 amend: force editor only if old message is reused (issue3698)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17863
diff changeset
    40
  $ HGEDITOR="\"sh\" \"`pwd`/editor.sh\"" hg commit --amend -m 'amend base1'
17811
a8aba2921456 amend: add noise in extra to avoid creating obsolescence cycle (issue3664)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17475
diff changeset
    41
  pretxncommit 43f1ba15f28a50abf0aae529cf8a16bfced7b149
a8aba2921456 amend: add noise in extra to avoid creating obsolescence cycle (issue3664)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17475
diff changeset
    42
  43f1ba15f28a tip
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
    43
  saved backup bundle to $TESTTMP/.hg/strip-backup/489edb5b847d-5ab4f721-amend.hg (glob)
17049
2440822446ce amend: disable hooks when creating intermediate commit (issue3501)
Idan Kamara <idankk86@gmail.com>
parents: 16630
diff changeset
    44
  $ echo 'pretxncommit.foo = ' >> $HGRCPATH
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    45
  $ hg diff -c .
17811
a8aba2921456 amend: add noise in extra to avoid creating obsolescence cycle (issue3664)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17475
diff changeset
    46
  diff -r ad120869acf0 -r 43f1ba15f28a a
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    47
  --- a/a	Thu Jan 01 00:00:00 1970 +0000
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    48
  +++ b/a	Thu Jan 01 00:00:00 1970 +0000
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    49
  @@ -1,1 +1,3 @@
30432
3633403888ae bdiff: give slight preference to appending lines
Mads Kiilerich <madski@unity3d.com>
parents: 30431
diff changeset
    50
   a
30431
8c0c75aa3ff4 bdiff: give slight preference to longest matches in the middle of the B side
Mads Kiilerich <madski@unity3d.com>
parents: 30240
diff changeset
    51
  +a
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    52
  +a
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    53
  $ hg log
17811
a8aba2921456 amend: add noise in extra to avoid creating obsolescence cycle (issue3664)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17475
diff changeset
    54
  changeset:   1:43f1ba15f28a
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    55
  tag:         tip
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    56
  user:        test
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    57
  date:        Thu Jan 01 00:00:00 1970 +0000
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    58
  summary:     amend base1
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    59
  
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    60
  changeset:   0:ad120869acf0
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    61
  user:        test
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    62
  date:        Thu Jan 01 00:00:00 1970 +0000
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    63
  summary:     base
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    64
  
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    65
18197
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
    66
Check proper abort for empty message
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    67
18197
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
    68
  $ cat > editor.sh << '__EOF__'
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
    69
  > #!/bin/sh
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
    70
  > echo "" > "$1"
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
    71
  > __EOF__
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
    72
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
    73
Update the existing file to ensure that the dirstate is not in pending state
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
    74
(where the status of some files in the working copy is not known yet). This in
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
    75
turn ensures that when the transaction is aborted due to an empty message during
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
    76
the amend, there should be no rollback.
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
    77
  $ echo a >> a
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
    78
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
    79
  $ echo b > b
18197
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
    80
  $ hg add b
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
    81
  $ hg summary
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
    82
  parent: 1:43f1ba15f28a tip
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
    83
   amend base1
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
    84
  branch: default
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
    85
  commit: 1 modified, 1 added, 1 unknown
18197
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
    86
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
    87
  phases: 2 draft
18197
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
    88
  $ HGEDITOR="\"sh\" \"`pwd`/editor.sh\"" hg commit --amend
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
    89
  abort: empty commit message
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
    90
  [255]
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
    91
  $ hg summary
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
    92
  parent: 1:43f1ba15f28a tip
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
    93
   amend base1
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
    94
  branch: default
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
    95
  commit: 1 modified, 1 added, 1 unknown
18197
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
    96
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
    97
  phases: 2 draft
18197
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
    98
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
    99
Add new file along with modified existing file:
18197
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
   100
  $ hg ci --amend -m 'amend base1 new file'
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   101
  saved backup bundle to $TESTTMP/.hg/strip-backup/43f1ba15f28a-007467c2-amend.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   102
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   103
Remove file that was added in amended commit:
17863
034e55bbf7c0 amend: fix incompatibity between logfile and message option (issue3675)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17811
diff changeset
   104
(and test logfile option)
17924
45bd0cd7ca04 amend: force editor only if old message is reused (issue3698)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17863
diff changeset
   105
(and test that logfile option do not trigger an editor)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   106
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   107
  $ hg rm b
17863
034e55bbf7c0 amend: fix incompatibity between logfile and message option (issue3675)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17811
diff changeset
   108
  $ echo 'amend base1 remove new file' > ../logfile
17924
45bd0cd7ca04 amend: force editor only if old message is reused (issue3698)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17863
diff changeset
   109
  $ HGEDITOR="\"sh\" \"`pwd`/editor.sh\"" hg ci --amend --logfile ../logfile
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   110
  saved backup bundle to $TESTTMP/.hg/strip-backup/c16295aaf401-1ada9901-amend.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   111
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   112
  $ hg cat b
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   113
  b: no such file in rev 47343646fa3d
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   114
  [1]
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   115
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   116
No changes, just a different message:
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   117
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   118
  $ hg ci -v --amend -m 'no changes, new message'
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   119
  amending changeset 47343646fa3d
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   120
  copying changeset 47343646fa3d to ad120869acf0
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
   121
  committing files:
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   122
  a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
   123
  committing manifest
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
   124
  committing changelog
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   125
  1 changesets found
23748
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
   126
  uncompressed size of bundle content:
30211
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30062
diff changeset
   127
       254 (changelog)
26927
0829ed3b75e1 test: use general delta for 'test-commit-amend.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26750
diff changeset
   128
       163 (manifests)
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   129
       131  a
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   130
  saved backup bundle to $TESTTMP/.hg/strip-backup/47343646fa3d-c2758885-amend.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   131
  1 changesets found
23748
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
   132
  uncompressed size of bundle content:
30211
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30062
diff changeset
   133
       250 (changelog)
26927
0829ed3b75e1 test: use general delta for 'test-commit-amend.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26750
diff changeset
   134
       163 (manifests)
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   135
       131  a
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   136
  adding branch
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   137
  adding changesets
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   138
  adding manifests
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   139
  adding file changes
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   140
  added 1 changesets with 1 changes to 1 files
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   141
  committed changeset 1:401431e913a1
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   142
  $ hg diff -c .
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   143
  diff -r ad120869acf0 -r 401431e913a1 a
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   144
  --- a/a	Thu Jan 01 00:00:00 1970 +0000
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   145
  +++ b/a	Thu Jan 01 00:00:00 1970 +0000
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   146
  @@ -1,1 +1,4 @@
30432
3633403888ae bdiff: give slight preference to appending lines
Mads Kiilerich <madski@unity3d.com>
parents: 30431
diff changeset
   147
   a
30431
8c0c75aa3ff4 bdiff: give slight preference to longest matches in the middle of the B side
Mads Kiilerich <madski@unity3d.com>
parents: 30240
diff changeset
   148
  +a
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   149
  +a
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   150
  +a
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   151
  $ hg log
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   152
  changeset:   1:401431e913a1
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   153
  tag:         tip
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   154
  user:        test
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   155
  date:        Thu Jan 01 00:00:00 1970 +0000
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   156
  summary:     no changes, new message
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   157
  
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   158
  changeset:   0:ad120869acf0
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   159
  user:        test
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   160
  date:        Thu Jan 01 00:00:00 1970 +0000
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   161
  summary:     base
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   162
  
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   163
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   164
Disable default date on commit so when -d isn't given, the old date is preserved:
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   165
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   166
  $ echo '[defaults]' >> $HGRCPATH
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   167
  $ echo 'commit=' >> $HGRCPATH
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   168
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   169
Test -u/-d:
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   170
22249
f5ff18f65b73 commit: change "editform" to distinguish merge commits from other (--amend)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21947
diff changeset
   171
  $ cat > .hg/checkeditform.sh <<EOF
f5ff18f65b73 commit: change "editform" to distinguish merge commits from other (--amend)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21947
diff changeset
   172
  > env | grep HGEDITFORM
f5ff18f65b73 commit: change "editform" to distinguish merge commits from other (--amend)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21947
diff changeset
   173
  > true
f5ff18f65b73 commit: change "editform" to distinguish merge commits from other (--amend)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21947
diff changeset
   174
  > EOF
f5ff18f65b73 commit: change "editform" to distinguish merge commits from other (--amend)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21947
diff changeset
   175
  $ HGEDITOR="sh .hg/checkeditform.sh" hg ci --amend -u foo -d '1 0'
f5ff18f65b73 commit: change "editform" to distinguish merge commits from other (--amend)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21947
diff changeset
   176
  HGEDITFORM=commit.amend.normal
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   177
  saved backup bundle to $TESTTMP/.hg/strip-backup/401431e913a1-5e8e532c-amend.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   178
  $ echo a >> a
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   179
  $ hg ci --amend -u foo -d '1 0'
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   180
  saved backup bundle to $TESTTMP/.hg/strip-backup/d96b1d28ae33-677e0afb-amend.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   181
  $ hg log -r .
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   182
  changeset:   1:a9a13940fc03
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   183
  tag:         tip
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   184
  user:        foo
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   185
  date:        Thu Jan 01 00:00:01 1970 +0000
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   186
  summary:     no changes, new message
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   187
  
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   188
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   189
Open editor with old commit message if a message isn't given otherwise:
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   190
16901
5b89700cce30 tests: consistently use a HGEDITOR pattern that works with msys on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16900
diff changeset
   191
  $ cat > editor.sh << '__EOF__'
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   192
  > #!/bin/sh
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   193
  > cat $1
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   194
  > echo "another precious commit message" > "$1"
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   195
  > __EOF__
20771
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   196
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   197
at first, test saving last-message.txt
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   198
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   199
  $ cat > .hg/hgrc << '__EOF__'
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   200
  > [hooks]
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   201
  > pretxncommit.test-saving-last-message = false
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   202
  > __EOF__
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   203
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   204
  $ rm -f .hg/last-message.txt
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   205
  $ hg commit --amend -v -m "message given from command line"
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   206
  amending changeset a9a13940fc03
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   207
  copying changeset a9a13940fc03 to ad120869acf0
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
   208
  committing files:
20771
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   209
  a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
   210
  committing manifest
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
   211
  committing changelog
20771
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   212
  running hook pretxncommit.test-saving-last-message: false
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   213
  transaction abort!
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   214
  rollback completed
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   215
  abort: pretxncommit.test-saving-last-message hook exited with status 1
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   216
  [255]
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   217
  $ cat .hg/last-message.txt
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   218
  message given from command line (no-eol)
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   219
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   220
  $ rm -f .hg/last-message.txt
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   221
  $ HGEDITOR="\"sh\" \"`pwd`/editor.sh\"" hg commit --amend -v
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   222
  amending changeset a9a13940fc03
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   223
  copying changeset a9a13940fc03 to ad120869acf0
20771
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   224
  no changes, new message
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   225
  
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   226
  
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   227
  HG: Enter commit message.  Lines beginning with 'HG:' are removed.
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   228
  HG: Leave message empty to abort commit.
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   229
  HG: --
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   230
  HG: user: foo
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   231
  HG: branch 'default'
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   232
  HG: changed a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
   233
  committing files:
20771
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   234
  a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
   235
  committing manifest
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
   236
  committing changelog
20771
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   237
  running hook pretxncommit.test-saving-last-message: false
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   238
  transaction abort!
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   239
  rollback completed
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   240
  abort: pretxncommit.test-saving-last-message hook exited with status 1
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   241
  [255]
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   242
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   243
  $ cat .hg/last-message.txt
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   244
  another precious commit message
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   245
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   246
  $ cat > .hg/hgrc << '__EOF__'
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   247
  > [hooks]
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   248
  > pretxncommit.test-saving-last-message =
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   249
  > __EOF__
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   250
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   251
then, test editing custom commit message
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
   252
16901
5b89700cce30 tests: consistently use a HGEDITOR pattern that works with msys on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16900
diff changeset
   253
  $ HGEDITOR="\"sh\" \"`pwd`/editor.sh\"" hg commit --amend -v
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   254
  amending changeset a9a13940fc03
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   255
  copying changeset a9a13940fc03 to ad120869acf0
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   256
  no changes, new message
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   257
  
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   258
  
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   259
  HG: Enter commit message.  Lines beginning with 'HG:' are removed.
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   260
  HG: Leave message empty to abort commit.
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   261
  HG: --
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   262
  HG: user: foo
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   263
  HG: branch 'default'
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   264
  HG: changed a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
   265
  committing files:
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   266
  a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
   267
  committing manifest
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
   268
  committing changelog
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   269
  1 changesets found
23748
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
   270
  uncompressed size of bundle content:
30211
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30062
diff changeset
   271
       249 (changelog)
26927
0829ed3b75e1 test: use general delta for 'test-commit-amend.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26750
diff changeset
   272
       163 (manifests)
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   273
       133  a
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   274
  saved backup bundle to $TESTTMP/.hg/strip-backup/a9a13940fc03-7c2e8674-amend.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   275
  1 changesets found
23748
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
   276
  uncompressed size of bundle content:
30211
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30062
diff changeset
   277
       257 (changelog)
26927
0829ed3b75e1 test: use general delta for 'test-commit-amend.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26750
diff changeset
   278
       163 (manifests)
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   279
       133  a
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   280
  adding branch
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   281
  adding changesets
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   282
  adding manifests
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   283
  adding file changes
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   284
  added 1 changesets with 1 changes to 1 files
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   285
  committed changeset 1:64a124ba1b44
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   286
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   287
Same, but with changes in working dir (different code path):
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   288
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   289
  $ echo a >> a
16901
5b89700cce30 tests: consistently use a HGEDITOR pattern that works with msys on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16900
diff changeset
   290
  $ HGEDITOR="\"sh\" \"`pwd`/editor.sh\"" hg commit --amend -v
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   291
  amending changeset 64a124ba1b44
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   292
  another precious commit message
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   293
  
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   294
  
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   295
  HG: Enter commit message.  Lines beginning with 'HG:' are removed.
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   296
  HG: Leave message empty to abort commit.
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   297
  HG: --
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   298
  HG: user: foo
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   299
  HG: branch 'default'
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   300
  HG: changed a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
   301
  committing files:
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   302
  a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
   303
  committing manifest
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
   304
  committing changelog
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   305
  1 changesets found
23748
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
   306
  uncompressed size of bundle content:
30211
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 30062
diff changeset
   307
       257 (changelog)
26927
0829ed3b75e1 test: use general delta for 'test-commit-amend.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26750
diff changeset
   308
       163 (manifests)
30432
3633403888ae bdiff: give slight preference to appending lines
Mads Kiilerich <madski@unity3d.com>
parents: 30431
diff changeset
   309
       133  a
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   310
  saved backup bundle to $TESTTMP/.hg/strip-backup/64a124ba1b44-10374b8f-amend.hg (glob)
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   311
  1 changesets found
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   312
  uncompressed size of bundle content:
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   313
       257 (changelog)
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   314
       163 (manifests)
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   315
       135  a
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   316
  adding branch
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   317
  adding changesets
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   318
  adding manifests
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   319
  adding file changes
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   320
  added 1 changesets with 1 changes to 1 files
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   321
  committed changeset 1:7892795b8e38
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   322
16901
5b89700cce30 tests: consistently use a HGEDITOR pattern that works with msys on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16900
diff changeset
   323
  $ rm editor.sh
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   324
  $ hg log -r .
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   325
  changeset:   1:7892795b8e38
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   326
  tag:         tip
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   327
  user:        foo
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   328
  date:        Thu Jan 01 00:00:01 1970 +0000
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   329
  summary:     another precious commit message
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   330
  
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   331
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   332
Moving bookmarks, preserve active bookmark:
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   333
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   334
  $ hg book book1
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   335
  $ hg book book2
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   336
  $ hg ci --amend -m 'move bookmarks'
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   337
  saved backup bundle to $TESTTMP/.hg/strip-backup/7892795b8e38-3fb46217-amend.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   338
  $ hg book
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   339
     book1                     1:8311f17e2616
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   340
   * book2                     1:8311f17e2616
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   341
  $ echo a >> a
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   342
  $ hg ci --amend -m 'move bookmarks'
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   343
  saved backup bundle to $TESTTMP/.hg/strip-backup/8311f17e2616-f0504fe3-amend.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   344
  $ hg book
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   345
     book1                     1:a3b65065808c
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   346
   * book2                     1:a3b65065808c
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   347
18198
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
   348
abort does not loose bookmarks
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
   349
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
   350
  $ cat > editor.sh << '__EOF__'
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
   351
  > #!/bin/sh
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
   352
  > echo "" > "$1"
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
   353
  > __EOF__
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
   354
  $ echo a >> a
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
   355
  $ HGEDITOR="\"sh\" \"`pwd`/editor.sh\"" hg commit --amend
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
   356
  abort: empty commit message
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
   357
  [255]
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
   358
  $ hg book
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   359
     book1                     1:a3b65065808c
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   360
   * book2                     1:a3b65065808c
18198
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
   361
  $ hg revert -Caq
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
   362
  $ rm editor.sh
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
   363
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   364
  $ echo '[defaults]' >> $HGRCPATH
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   365
  $ echo "commit=-d '0 0'" >> $HGRCPATH
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   366
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   367
Moving branches:
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   368
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   369
  $ hg branch foo
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   370
  marked working directory as branch foo
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   371
  (branches are permanent and global, did you want a bookmark?)
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   372
  $ echo a >> a
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   373
  $ hg ci -m 'branch foo'
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   374
  $ hg branch default -f
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   375
  marked working directory as branch default
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   376
  $ hg ci --amend -m 'back to default'
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   377
  saved backup bundle to $TESTTMP/.hg/strip-backup/f8339a38efe1-c18453c9-amend.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   378
  $ hg branches
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   379
  default                        2:9c07515f2650
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   380
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   381
Close branch:
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   382
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   383
  $ hg up -q 0
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   384
  $ echo b >> b
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   385
  $ hg branch foo
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   386
  marked working directory as branch foo
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   387
  (branches are permanent and global, did you want a bookmark?)
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   388
  $ hg ci -Am 'fork'
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   389
  adding b
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   390
  $ echo b >> b
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   391
  $ hg ci -mb
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   392
  $ hg ci --amend --close-branch -m 'closing branch foo'
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   393
  saved backup bundle to $TESTTMP/.hg/strip-backup/c962248fa264-54245dc7-amend.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   394
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   395
Same thing, different code path:
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   396
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   397
  $ echo b >> b
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   398
  $ hg ci -m 'reopen branch'
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   399
  reopening closed branch head 4
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   400
  $ echo b >> b
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   401
  $ hg ci --amend --close-branch
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   402
  saved backup bundle to $TESTTMP/.hg/strip-backup/027371728205-b900d9fa-amend.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   403
  $ hg branches
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   404
  default                        2:9c07515f2650
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   405
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   406
Refuse to amend during a merge:
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   407
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   408
  $ hg up -q default
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   409
  $ hg merge foo
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   410
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   411
  (branch merge, don't forget to commit)
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   412
  $ hg ci --amend
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   413
  abort: cannot amend while merging
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   414
  [255]
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   415
  $ hg ci -m 'merge'
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   416
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   417
Follow copies/renames:
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   418
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   419
  $ hg mv b c
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   420
  $ hg ci -m 'b -> c'
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   421
  $ hg mv c d
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   422
  $ hg ci --amend -m 'b -> d'
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   423
  saved backup bundle to $TESTTMP/.hg/strip-backup/42f3f27a067d-f23cc9f7-amend.hg (glob)
16483
3c4910364797 tests: ^ must be quoted when used on solaris sh
Mads Kiilerich <mads@kiilerich.com>
parents: 16458
diff changeset
   424
  $ hg st --rev '.^' --copies d
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   425
  A d
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   426
    b
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   427
  $ hg cp d e
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   428
  $ hg ci -m 'e = d'
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   429
  $ hg cp e f
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   430
  $ hg ci --amend -m 'f = d'
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   431
  saved backup bundle to $TESTTMP/.hg/strip-backup/9198f73182d5-251d584a-amend.hg (glob)
16483
3c4910364797 tests: ^ must be quoted when used on solaris sh
Mads Kiilerich <mads@kiilerich.com>
parents: 16458
diff changeset
   432
  $ hg st --rev '.^' --copies f
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   433
  A f
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   434
    d
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   435
16552
90ca344a7c55 test-commit-amend: exhibit an --amend weirdness
Patrick Mezard <patrick@mezard.eu>
parents: 16539
diff changeset
   436
  $ mv f f.orig
90ca344a7c55 test-commit-amend: exhibit an --amend weirdness
Patrick Mezard <patrick@mezard.eu>
parents: 16539
diff changeset
   437
  $ hg rm -A f
90ca344a7c55 test-commit-amend: exhibit an --amend weirdness
Patrick Mezard <patrick@mezard.eu>
parents: 16539
diff changeset
   438
  $ hg ci -m removef
90ca344a7c55 test-commit-amend: exhibit an --amend weirdness
Patrick Mezard <patrick@mezard.eu>
parents: 16539
diff changeset
   439
  $ hg cp a f
90ca344a7c55 test-commit-amend: exhibit an --amend weirdness
Patrick Mezard <patrick@mezard.eu>
parents: 16539
diff changeset
   440
  $ mv f.orig f
90ca344a7c55 test-commit-amend: exhibit an --amend weirdness
Patrick Mezard <patrick@mezard.eu>
parents: 16539
diff changeset
   441
  $ hg ci --amend -m replacef
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   442
  saved backup bundle to $TESTTMP/.hg/strip-backup/f0993ab6b482-eda301bf-amend.hg (glob)
16552
90ca344a7c55 test-commit-amend: exhibit an --amend weirdness
Patrick Mezard <patrick@mezard.eu>
parents: 16539
diff changeset
   443
  $ hg st --change . --copies
90ca344a7c55 test-commit-amend: exhibit an --amend weirdness
Patrick Mezard <patrick@mezard.eu>
parents: 16539
diff changeset
   444
  $ hg log -r . --template "{file_copies}\n"
16553
9224cc2e99cc amend: fix copy records handling (issue3410)
Patrick Mezard <patrick@mezard.eu>
parents: 16552
diff changeset
   445
  
9224cc2e99cc amend: fix copy records handling (issue3410)
Patrick Mezard <patrick@mezard.eu>
parents: 16552
diff changeset
   446
9224cc2e99cc amend: fix copy records handling (issue3410)
Patrick Mezard <patrick@mezard.eu>
parents: 16552
diff changeset
   447
Move added file (issue3410):
9224cc2e99cc amend: fix copy records handling (issue3410)
Patrick Mezard <patrick@mezard.eu>
parents: 16552
diff changeset
   448
9224cc2e99cc amend: fix copy records handling (issue3410)
Patrick Mezard <patrick@mezard.eu>
parents: 16552
diff changeset
   449
  $ echo g >> g
9224cc2e99cc amend: fix copy records handling (issue3410)
Patrick Mezard <patrick@mezard.eu>
parents: 16552
diff changeset
   450
  $ hg ci -Am g
9224cc2e99cc amend: fix copy records handling (issue3410)
Patrick Mezard <patrick@mezard.eu>
parents: 16552
diff changeset
   451
  adding g
9224cc2e99cc amend: fix copy records handling (issue3410)
Patrick Mezard <patrick@mezard.eu>
parents: 16552
diff changeset
   452
  $ hg mv g h
9224cc2e99cc amend: fix copy records handling (issue3410)
Patrick Mezard <patrick@mezard.eu>
parents: 16552
diff changeset
   453
  $ hg ci --amend
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   454
  saved backup bundle to $TESTTMP/.hg/strip-backup/58585e3f095c-0f5ebcda-amend.hg (glob)
16553
9224cc2e99cc amend: fix copy records handling (issue3410)
Patrick Mezard <patrick@mezard.eu>
parents: 16552
diff changeset
   455
  $ hg st --change . --copies h
9224cc2e99cc amend: fix copy records handling (issue3410)
Patrick Mezard <patrick@mezard.eu>
parents: 16552
diff changeset
   456
  A h
9224cc2e99cc amend: fix copy records handling (issue3410)
Patrick Mezard <patrick@mezard.eu>
parents: 16552
diff changeset
   457
  $ hg log -r . --template "{file_copies}\n"
9224cc2e99cc amend: fix copy records handling (issue3410)
Patrick Mezard <patrick@mezard.eu>
parents: 16552
diff changeset
   458
  
16552
90ca344a7c55 test-commit-amend: exhibit an --amend weirdness
Patrick Mezard <patrick@mezard.eu>
parents: 16539
diff changeset
   459
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   460
Can't rollback an amend:
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   461
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   462
  $ hg rollback
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   463
  no rollback information available
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
   464
  [1]
16630
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   465
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   466
Preserve extra dict (issue3430):
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   467
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   468
  $ hg branch a
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   469
  marked working directory as branch a
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   470
  (branches are permanent and global, did you want a bookmark?)
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   471
  $ echo a >> a
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   472
  $ hg ci -ma
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   473
  $ hg ci --amend -m "a'"
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   474
  saved backup bundle to $TESTTMP/.hg/strip-backup/39a162f1d65e-9dfe13d8-amend.hg (glob)
16630
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   475
  $ hg log -r . --template "{branch}\n"
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   476
  a
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   477
  $ hg ci --amend -m "a''"
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   478
  saved backup bundle to $TESTTMP/.hg/strip-backup/d5ca7b1ac72b-0b4c1a34-amend.hg (glob)
16630
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   479
  $ hg log -r . --template "{branch}\n"
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   480
  a
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   481
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   482
Also preserve other entries in the dict that are in the old commit,
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   483
first graft something so there's an additional entry:
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   484
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   485
  $ hg up 0 -q
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   486
  $ echo z > z
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   487
  $ hg ci -Am 'fork'
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   488
  adding z
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   489
  created new head
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   490
  $ hg up 11
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   491
  5 files updated, 0 files merged, 1 files removed, 0 files unresolved
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   492
  $ hg graft 12
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23139
diff changeset
   493
  grafting 12:2647734878ef "fork" (tip)
16630
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   494
  $ hg ci --amend -m 'graft amend'
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   495
  saved backup bundle to $TESTTMP/.hg/strip-backup/fe8c6f7957ca-25638666-amend.hg (glob)
16630
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   496
  $ hg log -r . --debug | grep extra
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   497
  extra:       amend_source=fe8c6f7957ca1665ed77496ed7a07657d469ac60
16630
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   498
  extra:       branch=a
f30226b1a46a amend: preserve extra dict (issue3430)
Idan Kamara <idankk86@gmail.com>
parents: 16553
diff changeset
   499
  extra:       source=2647734878ef0236dda712fae9c1651cf694ea8a
17461
bacde764fba0 amend: preserve phase of amended revision (issue3602)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17060
diff changeset
   500
bacde764fba0 amend: preserve phase of amended revision (issue3602)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17060
diff changeset
   501
Preserve phase
bacde764fba0 amend: preserve phase of amended revision (issue3602)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17060
diff changeset
   502
bacde764fba0 amend: preserve phase of amended revision (issue3602)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17060
diff changeset
   503
  $ hg phase '.^::.'
bacde764fba0 amend: preserve phase of amended revision (issue3602)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17060
diff changeset
   504
  11: draft
bacde764fba0 amend: preserve phase of amended revision (issue3602)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17060
diff changeset
   505
  13: draft
bacde764fba0 amend: preserve phase of amended revision (issue3602)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17060
diff changeset
   506
  $ hg phase --secret --force .
bacde764fba0 amend: preserve phase of amended revision (issue3602)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17060
diff changeset
   507
  $ hg phase '.^::.'
bacde764fba0 amend: preserve phase of amended revision (issue3602)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17060
diff changeset
   508
  11: draft
bacde764fba0 amend: preserve phase of amended revision (issue3602)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17060
diff changeset
   509
  13: secret
bacde764fba0 amend: preserve phase of amended revision (issue3602)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17060
diff changeset
   510
  $ hg commit --amend -m 'amend for phase' -q
bacde764fba0 amend: preserve phase of amended revision (issue3602)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17060
diff changeset
   511
  $ hg phase '.^::.'
bacde764fba0 amend: preserve phase of amended revision (issue3602)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17060
diff changeset
   512
  11: draft
bacde764fba0 amend: preserve phase of amended revision (issue3602)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17060
diff changeset
   513
  13: secret
bacde764fba0 amend: preserve phase of amended revision (issue3602)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17060
diff changeset
   514
17475
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   515
Test amend with obsolete
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   516
---------------------------
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   517
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   518
Enable obsolete
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   519
22956
a0f89c852a0c obsolete: update test-commit-amend to use obsolete option
Durham Goode <durham@fb.com>
parents: 22249
diff changeset
   520
  $ cat >> $HGRCPATH << EOF
a0f89c852a0c obsolete: update test-commit-amend to use obsolete option
Durham Goode <durham@fb.com>
parents: 22249
diff changeset
   521
  > [experimental]
34866
1644623ab096 config: use 'experimental.evolution.create-markers'
Boris Feld <boris.feld@octobus.net>
parents: 34085
diff changeset
   522
  > evolution.createmarkers=True
34867
7f183c643eb6 config: use 'experimental.evolution.allowunstable'
Boris Feld <boris.feld@octobus.net>
parents: 34866
diff changeset
   523
  > evolution.allowunstable=True
17475
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   524
  > EOF
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   525
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   526
Amend with no files changes
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   527
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   528
  $ hg id -n
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   529
  13
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   530
  $ hg ci --amend -m 'babar'
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   531
  $ hg id -n
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   532
  14
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   533
  $ hg log -Gl 3 --style=compact
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   534
  @  14[tip]:11   682950e85999   1970-01-01 00:00 +0000   test
17475
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   535
  |    babar
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   536
  |
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   537
  | o  12:0   2647734878ef   1970-01-01 00:00 +0000   test
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   538
  | |    fork
28627
d7af9b4ae7dd graphmod: set default edge styles for ascii graphs (BC)
Martijn Pieters <mjpieters@fb.com>
parents: 27597
diff changeset
   539
  | ~
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   540
  o  11   0ddb275cfad1   1970-01-01 00:00 +0000   test
28627
d7af9b4ae7dd graphmod: set default edge styles for ascii graphs (BC)
Martijn Pieters <mjpieters@fb.com>
parents: 27597
diff changeset
   541
  |    a''
d7af9b4ae7dd graphmod: set default edge styles for ascii graphs (BC)
Martijn Pieters <mjpieters@fb.com>
parents: 27597
diff changeset
   542
  ~
17475
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   543
  $ hg log -Gl 4 --hidden --style=compact
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   544
  @  14[tip]:11   682950e85999   1970-01-01 00:00 +0000   test
17475
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   545
  |    babar
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   546
  |
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   547
  | x  13:11   5167600b0f7a   1970-01-01 00:00 +0000   test
17475
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   548
  |/     amend for phase
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   549
  |
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   550
  | o  12:0   2647734878ef   1970-01-01 00:00 +0000   test
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   551
  | |    fork
28627
d7af9b4ae7dd graphmod: set default edge styles for ascii graphs (BC)
Martijn Pieters <mjpieters@fb.com>
parents: 27597
diff changeset
   552
  | ~
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   553
  o  11   0ddb275cfad1   1970-01-01 00:00 +0000   test
28627
d7af9b4ae7dd graphmod: set default edge styles for ascii graphs (BC)
Martijn Pieters <mjpieters@fb.com>
parents: 27597
diff changeset
   554
  |    a''
d7af9b4ae7dd graphmod: set default edge styles for ascii graphs (BC)
Martijn Pieters <mjpieters@fb.com>
parents: 27597
diff changeset
   555
  ~
17475
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   556
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   557
Amend with files changes
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   558
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   559
(note: the extra commit over 15 is a temporary junk I would be happy to get
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   560
ride of)
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   561
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   562
  $ echo 'babar' >> a
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   563
  $ hg commit --amend
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   564
  $ hg log -Gl 6 --hidden --style=compact
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   565
  @  15[tip]:11   a5b42b49b0d5   1970-01-01 00:00 +0000   test
17475
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   566
  |    babar
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   567
  |
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   568
  | x  14:11   682950e85999   1970-01-01 00:00 +0000   test
17475
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   569
  |/     babar
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   570
  |
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   571
  | x  13:11   5167600b0f7a   1970-01-01 00:00 +0000   test
17475
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   572
  |/     amend for phase
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   573
  |
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   574
  | o  12:0   2647734878ef   1970-01-01 00:00 +0000   test
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   575
  | |    fork
28627
d7af9b4ae7dd graphmod: set default edge styles for ascii graphs (BC)
Martijn Pieters <mjpieters@fb.com>
parents: 27597
diff changeset
   576
  | ~
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   577
  o  11   0ddb275cfad1   1970-01-01 00:00 +0000   test
28627
d7af9b4ae7dd graphmod: set default edge styles for ascii graphs (BC)
Martijn Pieters <mjpieters@fb.com>
parents: 27597
diff changeset
   578
  |    a''
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   579
  |
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   580
  o  10   5fa75032e226   1970-01-01 00:00 +0000   test
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   581
  |    g
28627
d7af9b4ae7dd graphmod: set default edge styles for ascii graphs (BC)
Martijn Pieters <mjpieters@fb.com>
parents: 27597
diff changeset
   582
  ~
17475
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   583
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
   584
18399
66cec3c2ee00 tests: more comment cleanup related to obsolescence
Kevin Bullock <kbullock@ringworld.org>
parents: 18398
diff changeset
   585
Test that amend does not make it easy to create obsolescence cycle
17811
a8aba2921456 amend: add noise in extra to avoid creating obsolescence cycle (issue3664)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17475
diff changeset
   586
---------------------------------------------------------------------
a8aba2921456 amend: add noise in extra to avoid creating obsolescence cycle (issue3664)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17475
diff changeset
   587
18267
5bb610f87d1d clfilter: enforce hidden changeset globally
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18206
diff changeset
   588
  $ hg id -r 14 --hidden
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   589
  682950e85999 (a)
18267
5bb610f87d1d clfilter: enforce hidden changeset globally
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18206
diff changeset
   590
  $ hg revert -ar 14 --hidden
17811
a8aba2921456 amend: add noise in extra to avoid creating obsolescence cycle (issue3664)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17475
diff changeset
   591
  reverting a
a8aba2921456 amend: add noise in extra to avoid creating obsolescence cycle (issue3664)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17475
diff changeset
   592
  $ hg commit --amend
a8aba2921456 amend: add noise in extra to avoid creating obsolescence cycle (issue3664)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17475
diff changeset
   593
  $ hg id
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   594
  37973c7e0b61 (a) tip
18163
c5bd753c5bc6 amend: allow amend of non-head when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
   595
18398
1a00c8451640 test: fix in-test comments related to obsolescence
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18267
diff changeset
   596
Test that rewriting leaving instability behind is allowed
18163
c5bd753c5bc6 amend: allow amend of non-head when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
   597
---------------------------------------------------------------------
c5bd753c5bc6 amend: allow amend of non-head when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
   598
c5bd753c5bc6 amend: allow amend of non-head when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
   599
  $ hg up '.^'
c5bd753c5bc6 amend: allow amend of non-head when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
   600
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
c5bd753c5bc6 amend: allow amend of non-head when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
   601
  $ echo 'b' >> a
c5bd753c5bc6 amend: allow amend of non-head when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
   602
  $ hg log --style compact -r 'children(.)'
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   603
  16[tip]:11   37973c7e0b61   1970-01-01 00:00 +0000   test
18163
c5bd753c5bc6 amend: allow amend of non-head when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
   604
    babar
c5bd753c5bc6 amend: allow amend of non-head when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
   605
  
c5bd753c5bc6 amend: allow amend of non-head when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
   606
  $ hg commit --amend
33774
9dcc3529e002 revset: rename unstable into orphan
Boris Feld <boris.feld@octobus.net>
parents: 33773
diff changeset
   607
  $ hg log -r 'orphan()'
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   608
  changeset:   16:37973c7e0b61
18163
c5bd753c5bc6 amend: allow amend of non-head when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
   609
  branch:      a
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   610
  parent:      11:0ddb275cfad1
18163
c5bd753c5bc6 amend: allow amend of non-head when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
   611
  user:        test
c5bd753c5bc6 amend: allow amend of non-head when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
   612
  date:        Thu Jan 01 00:00:00 1970 +0000
33667
03039ff3082b evolution: rename unstable to orphan
Boris Feld <boris.feld@octobus.net>
parents: 33666
diff changeset
   613
  instability: orphan
18163
c5bd753c5bc6 amend: allow amend of non-head when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
   614
  summary:     babar
c5bd753c5bc6 amend: allow amend of non-head when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
   615
  
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   616
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   617
Amend a merge changeset (with renames and conflicts from the second parent):
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   618
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   619
  $ hg up -q default
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   620
  $ hg branch -q bar
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   621
  $ hg cp a aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   622
  $ hg mv z zz
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   623
  $ echo cc > cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   624
  $ hg add cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   625
  $ hg ci -m aazzcc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   626
  $ hg up -q default
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   627
  $ echo a >> a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   628
  $ echo dd > cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   629
  $ hg add cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   630
  $ hg ci -m aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   631
  $ hg merge -q bar
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 25393
diff changeset
   632
  warning: conflicts while merging cc! (edit, then use 'hg resolve --mark')
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   633
  [1]
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   634
  $ hg resolve -m cc
21947
b081decd9062 resolve: add parenthesis around "no more unresolved files" message
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21693
diff changeset
   635
  (no more unresolved files)
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   636
  $ hg ci -m 'merge bar'
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   637
  $ hg log --config diff.git=1 -pr .
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   638
  changeset:   20:163cfd7219f7
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   639
  tag:         tip
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   640
  parent:      19:30d96aeaf27b
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   641
  parent:      18:1aa437659d19
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   642
  user:        test
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   643
  date:        Thu Jan 01 00:00:00 1970 +0000
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   644
  summary:     merge bar
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   645
  
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   646
  diff --git a/a b/aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   647
  copy from a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   648
  copy to aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   649
  diff --git a/cc b/cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   650
  --- a/cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   651
  +++ b/cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   652
  @@ -1,1 +1,5 @@
30062
940c05b25b07 merge: add conflict labels to merge command
Simon Farnsworth <simonfar@fb.com>
parents: 29775
diff changeset
   653
  +<<<<<<< working copy: 30d96aeaf27b - test: aa
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   654
   dd
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   655
  +=======
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   656
  +cc
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30432
diff changeset
   657
  +>>>>>>> merge rev:    1aa437659d19 bar - test: aazzcc
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   658
  diff --git a/z b/zz
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   659
  rename from z
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   660
  rename to zz
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   661
  
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   662
  $ hg debugrename aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   663
  aa renamed from a:a80d06849b333b8a3d5c445f8ba3142010dcdc9e
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   664
  $ hg debugrename zz
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   665
  zz renamed from z:69a1b67522704ec122181c0890bd16e9d3e7516a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   666
  $ hg debugrename cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   667
  cc not renamed
22249
f5ff18f65b73 commit: change "editform" to distinguish merge commits from other (--amend)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21947
diff changeset
   668
  $ HGEDITOR="sh .hg/checkeditform.sh" hg ci --amend -m 'merge bar (amend message)' --edit
f5ff18f65b73 commit: change "editform" to distinguish merge commits from other (--amend)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21947
diff changeset
   669
  HGEDITFORM=commit.amend.merge
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   670
  $ hg log --config diff.git=1 -pr .
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   671
  changeset:   21:bca52d4ed186
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   672
  tag:         tip
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   673
  parent:      19:30d96aeaf27b
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   674
  parent:      18:1aa437659d19
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   675
  user:        test
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   676
  date:        Thu Jan 01 00:00:00 1970 +0000
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   677
  summary:     merge bar (amend message)
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   678
  
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   679
  diff --git a/a b/aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   680
  copy from a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   681
  copy to aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   682
  diff --git a/cc b/cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   683
  --- a/cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   684
  +++ b/cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   685
  @@ -1,1 +1,5 @@
30062
940c05b25b07 merge: add conflict labels to merge command
Simon Farnsworth <simonfar@fb.com>
parents: 29775
diff changeset
   686
  +<<<<<<< working copy: 30d96aeaf27b - test: aa
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   687
   dd
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   688
  +=======
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   689
  +cc
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30432
diff changeset
   690
  +>>>>>>> merge rev:    1aa437659d19 bar - test: aazzcc
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   691
  diff --git a/z b/zz
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   692
  rename from z
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   693
  rename to zz
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   694
  
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   695
  $ hg debugrename aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   696
  aa renamed from a:a80d06849b333b8a3d5c445f8ba3142010dcdc9e
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   697
  $ hg debugrename zz
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   698
  zz renamed from z:69a1b67522704ec122181c0890bd16e9d3e7516a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   699
  $ hg debugrename cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   700
  cc not renamed
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   701
  $ hg mv zz z
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   702
  $ hg ci --amend -m 'merge bar (undo rename)'
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   703
  $ hg log --config diff.git=1 -pr .
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   704
  changeset:   22:12594a98ca3f
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   705
  tag:         tip
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   706
  parent:      19:30d96aeaf27b
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   707
  parent:      18:1aa437659d19
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   708
  user:        test
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   709
  date:        Thu Jan 01 00:00:00 1970 +0000
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   710
  summary:     merge bar (undo rename)
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   711
  
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   712
  diff --git a/a b/aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   713
  copy from a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   714
  copy to aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   715
  diff --git a/cc b/cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   716
  --- a/cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   717
  +++ b/cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   718
  @@ -1,1 +1,5 @@
30062
940c05b25b07 merge: add conflict labels to merge command
Simon Farnsworth <simonfar@fb.com>
parents: 29775
diff changeset
   719
  +<<<<<<< working copy: 30d96aeaf27b - test: aa
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   720
   dd
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   721
  +=======
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   722
  +cc
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30432
diff changeset
   723
  +>>>>>>> merge rev:    1aa437659d19 bar - test: aazzcc
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   724
  
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   725
  $ hg debugrename z
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   726
  z not renamed
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   727
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   728
Amend a merge changeset (with renames during the merge):
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   729
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   730
  $ hg up -q bar
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   731
  $ echo x > x
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   732
  $ hg add x
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   733
  $ hg ci -m x
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   734
  $ hg up -q default
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   735
  $ hg merge -q bar
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   736
  $ hg mv aa aaa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   737
  $ echo aa >> aaa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   738
  $ hg ci -m 'merge bar again'
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   739
  $ hg log --config diff.git=1 -pr .
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   740
  changeset:   24:dffde028b388
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   741
  tag:         tip
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   742
  parent:      22:12594a98ca3f
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   743
  parent:      23:4c94d5bc65f5
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   744
  user:        test
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   745
  date:        Thu Jan 01 00:00:00 1970 +0000
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   746
  summary:     merge bar again
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   747
  
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   748
  diff --git a/aa b/aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   749
  deleted file mode 100644
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   750
  --- a/aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   751
  +++ /dev/null
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   752
  @@ -1,2 +0,0 @@
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   753
  -a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   754
  -a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   755
  diff --git a/aaa b/aaa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   756
  new file mode 100644
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   757
  --- /dev/null
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   758
  +++ b/aaa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   759
  @@ -0,0 +1,3 @@
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   760
  +a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   761
  +a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   762
  +aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   763
  diff --git a/x b/x
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   764
  new file mode 100644
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   765
  --- /dev/null
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   766
  +++ b/x
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   767
  @@ -0,0 +1,1 @@
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   768
  +x
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   769
  
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   770
  $ hg debugrename aaa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   771
  aaa renamed from aa:37d9b5d994eab34eda9c16b195ace52c7b129980
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   772
  $ hg mv aaa aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   773
  $ hg ci --amend -m 'merge bar again (undo rename)'
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   774
  $ hg log --config diff.git=1 -pr .
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   775
  changeset:   25:18e3ba160489
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   776
  tag:         tip
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   777
  parent:      22:12594a98ca3f
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   778
  parent:      23:4c94d5bc65f5
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   779
  user:        test
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   780
  date:        Thu Jan 01 00:00:00 1970 +0000
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   781
  summary:     merge bar again (undo rename)
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   782
  
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   783
  diff --git a/aa b/aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   784
  --- a/aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   785
  +++ b/aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   786
  @@ -1,2 +1,3 @@
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   787
   a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   788
   a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   789
  +aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   790
  diff --git a/x b/x
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   791
  new file mode 100644
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   792
  --- /dev/null
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   793
  +++ b/x
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   794
  @@ -0,0 +1,1 @@
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   795
  +x
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   796
  
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   797
  $ hg debugrename aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   798
  aa not renamed
18912
4e1ae55e63ef test-commit-amend.t: fix check-code violation from 3a72c89a83ec
Augie Fackler <raf@durin42.com>
parents: 18909
diff changeset
   799
  $ hg debugrename -r '.^' aa
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   800
  aa renamed from a:a80d06849b333b8a3d5c445f8ba3142010dcdc9e
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   801
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   802
Amend a merge changeset (with manifest-level conflicts):
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   803
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   804
  $ hg up -q bar
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   805
  $ hg rm aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   806
  $ hg ci -m 'rm aa'
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   807
  $ hg up -q default
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   808
  $ echo aa >> aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   809
  $ hg ci -m aa
27597
fe150586d9bd tests: explicitly request changed version in c/d conflict in test-commit-amend.t
Siddharth Agarwal <sid0@fb.com>
parents: 27163
diff changeset
   810
  $ hg merge -q bar --config ui.interactive=True << EOF
fe150586d9bd tests: explicitly request changed version in c/d conflict in test-commit-amend.t
Siddharth Agarwal <sid0@fb.com>
parents: 27163
diff changeset
   811
  > c
fe150586d9bd tests: explicitly request changed version in c/d conflict in test-commit-amend.t
Siddharth Agarwal <sid0@fb.com>
parents: 27163
diff changeset
   812
  > EOF
30062
940c05b25b07 merge: add conflict labels to merge command
Simon Farnsworth <simonfar@fb.com>
parents: 29775
diff changeset
   813
  local [working copy] changed aa which other [merge rev] deleted
27163
27b89a0957ec filemerge: add a 'leave unresolved' option to change/delete prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26927
diff changeset
   814
  use (c)hanged version, (d)elete, or leave (u)nresolved? c
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   815
  $ hg ci -m 'merge bar (with conflicts)'
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   816
  $ hg log --config diff.git=1 -pr .
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   817
  changeset:   28:b4c3035e2544
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   818
  tag:         tip
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   819
  parent:      27:4b216ca5ba97
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   820
  parent:      26:67db8847a540
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   821
  user:        test
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   822
  date:        Thu Jan 01 00:00:00 1970 +0000
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   823
  summary:     merge bar (with conflicts)
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   824
  
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   825
  
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   826
  $ hg rm aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   827
  $ hg ci --amend -m 'merge bar (with conflicts, amended)'
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   828
  $ hg log --config diff.git=1 -pr .
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   829
  changeset:   29:1205ed810051
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   830
  tag:         tip
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   831
  parent:      27:4b216ca5ba97
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   832
  parent:      26:67db8847a540
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   833
  user:        test
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   834
  date:        Thu Jan 01 00:00:00 1970 +0000
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   835
  summary:     merge bar (with conflicts, amended)
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   836
  
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   837
  diff --git a/aa b/aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   838
  deleted file mode 100644
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   839
  --- a/aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   840
  +++ /dev/null
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   841
  @@ -1,4 +0,0 @@
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   842
  -a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   843
  -a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   844
  -aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   845
  -aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
   846
  
19305
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
   847
Issue 3445: amending with --close-branch a commit that created a new head should fail
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
   848
This shouldn't be possible:
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
   849
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
   850
  $ hg up -q default
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
   851
  $ hg branch closewithamend
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
   852
  marked working directory as branch closewithamend
23588
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   853
  $ echo foo > foo
22956
a0f89c852a0c obsolete: update test-commit-amend to use obsolete option
Durham Goode <durham@fb.com>
parents: 22249
diff changeset
   854
  $ hg add foo
19980
0151b61fed97 test: do not add .pyc and .orig in test-commit-amend.t (issue4085)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 19305
diff changeset
   855
  $ hg ci -m..
19305
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
   856
  $ hg ci --amend --close-branch -m 'closing'
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
   857
  abort: can only close branch heads
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
   858
  [255]
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
   859
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
   860
This silliness fails:
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
   861
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
   862
  $ hg branch silliness
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
   863
  marked working directory as branch silliness
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
   864
  $ echo b >> b
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
   865
  $ hg ci --close-branch -m'open and close'
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
   866
  abort: can only close branch heads
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
   867
  [255]
20700
b0153cb8b64e commit: create new amend changeset as secret correctly for "--secret" option
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19980
diff changeset
   868
b0153cb8b64e commit: create new amend changeset as secret correctly for "--secret" option
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19980
diff changeset
   869
Test that amend with --secret creates new secret changeset forcibly
b0153cb8b64e commit: create new amend changeset as secret correctly for "--secret" option
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19980
diff changeset
   870
---------------------------------------------------------------------
b0153cb8b64e commit: create new amend changeset as secret correctly for "--secret" option
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19980
diff changeset
   871
b0153cb8b64e commit: create new amend changeset as secret correctly for "--secret" option
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19980
diff changeset
   872
  $ hg phase '.^::.'
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   873
  29: draft
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   874
  30: draft
20700
b0153cb8b64e commit: create new amend changeset as secret correctly for "--secret" option
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19980
diff changeset
   875
  $ hg commit --amend --secret -m 'amend as secret' -q
b0153cb8b64e commit: create new amend changeset as secret correctly for "--secret" option
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19980
diff changeset
   876
  $ hg phase '.^::.'
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   877
  29: draft
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
   878
  31: secret
21036
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   879
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   880
Test that amend with --edit invokes editor forcibly
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   881
---------------------------------------------------
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   882
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   883
  $ hg parents --template "{desc}\n"
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   884
  amend as secret
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   885
  $ HGEDITOR=cat hg commit --amend -m "editor should be suppressed"
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   886
  $ hg parents --template "{desc}\n"
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   887
  editor should be suppressed
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   888
23587
8063901e56cd memctx: calculate exact status being committed from specified files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23505
diff changeset
   889
  $ hg status --rev '.^1::.'
8063901e56cd memctx: calculate exact status being committed from specified files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23505
diff changeset
   890
  A foo
21036
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   891
  $ HGEDITOR=cat hg commit --amend -m "editor should be invoked" --edit
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   892
  editor should be invoked
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   893
  
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   894
  
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   895
  HG: Enter commit message.  Lines beginning with 'HG:' are removed.
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   896
  HG: Leave message empty to abort commit.
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   897
  HG: --
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   898
  HG: user: test
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   899
  HG: branch 'silliness'
23587
8063901e56cd memctx: calculate exact status being committed from specified files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23505
diff changeset
   900
  HG: added foo
21036
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   901
  $ hg parents --template "{desc}\n"
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
   902
  editor should be invoked
23071
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
   903
23588
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   904
Test that "diff()" in committemplate works correctly for amending
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   905
-----------------------------------------------------------------
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   906
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   907
  $ cat >> .hg/hgrc <<EOF
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   908
  > [committemplate]
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   909
  > changeset.commit.amend = {desc}\n
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   910
  >     HG: M: {file_mods}
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   911
  >     HG: A: {file_adds}
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   912
  >     HG: R: {file_dels}
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   913
  >     {splitlines(diff()) % 'HG: {line}\n'}
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   914
  > EOF
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   915
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   916
  $ hg parents --template "M: {file_mods}\nA: {file_adds}\nR: {file_dels}\n"
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   917
  M: 
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   918
  A: foo
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   919
  R: 
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   920
  $ hg status -amr
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   921
  $ HGEDITOR=cat hg commit --amend -e -m "expecting diff of foo"
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   922
  expecting diff of foo
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   923
  
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   924
  HG: M: 
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   925
  HG: A: foo
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   926
  HG: R: 
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30432
diff changeset
   927
  HG: diff -r 1205ed810051 foo
23588
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   928
  HG: --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   929
  HG: +++ b/foo	Thu Jan 01 00:00:00 1970 +0000
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   930
  HG: @@ -0,0 +1,1 @@
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   931
  HG: +foo
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   932
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   933
  $ echo y > y
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   934
  $ hg add y
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   935
  $ HGEDITOR=cat hg commit --amend -e -m "expecting diff of foo and y"
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   936
  expecting diff of foo and y
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   937
  
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   938
  HG: M: 
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   939
  HG: A: foo y
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   940
  HG: R: 
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30432
diff changeset
   941
  HG: diff -r 1205ed810051 foo
23588
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   942
  HG: --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   943
  HG: +++ b/foo	Thu Jan 01 00:00:00 1970 +0000
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   944
  HG: @@ -0,0 +1,1 @@
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   945
  HG: +foo
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30432
diff changeset
   946
  HG: diff -r 1205ed810051 y
23588
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   947
  HG: --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   948
  HG: +++ b/y	Thu Jan 01 00:00:00 1970 +0000
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   949
  HG: @@ -0,0 +1,1 @@
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   950
  HG: +y
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
   951
23589
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   952
  $ hg rm a
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   953
  $ HGEDITOR=cat hg commit --amend -e -m "expecting diff of a, foo and y"
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   954
  expecting diff of a, foo and y
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   955
  
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   956
  HG: M: 
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   957
  HG: A: foo y
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   958
  HG: R: a
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30432
diff changeset
   959
  HG: diff -r 1205ed810051 a
23589
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   960
  HG: --- a/a	Thu Jan 01 00:00:00 1970 +0000
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   961
  HG: +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   962
  HG: @@ -1,2 +0,0 @@
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   963
  HG: -a
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   964
  HG: -a
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30432
diff changeset
   965
  HG: diff -r 1205ed810051 foo
23589
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   966
  HG: --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   967
  HG: +++ b/foo	Thu Jan 01 00:00:00 1970 +0000
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   968
  HG: @@ -0,0 +1,1 @@
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   969
  HG: +foo
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30432
diff changeset
   970
  HG: diff -r 1205ed810051 y
23589
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   971
  HG: --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   972
  HG: +++ b/y	Thu Jan 01 00:00:00 1970 +0000
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   973
  HG: @@ -0,0 +1,1 @@
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   974
  HG: +y
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   975
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   976
  $ hg rm x
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   977
  $ HGEDITOR=cat hg commit --amend -e -m "expecting diff of a, foo, x and y"
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   978
  expecting diff of a, foo, x and y
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   979
  
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   980
  HG: M: 
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   981
  HG: A: foo y
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   982
  HG: R: a x
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30432
diff changeset
   983
  HG: diff -r 1205ed810051 a
23589
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   984
  HG: --- a/a	Thu Jan 01 00:00:00 1970 +0000
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   985
  HG: +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   986
  HG: @@ -1,2 +0,0 @@
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   987
  HG: -a
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   988
  HG: -a
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30432
diff changeset
   989
  HG: diff -r 1205ed810051 foo
23589
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   990
  HG: --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   991
  HG: +++ b/foo	Thu Jan 01 00:00:00 1970 +0000
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   992
  HG: @@ -0,0 +1,1 @@
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   993
  HG: +foo
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30432
diff changeset
   994
  HG: diff -r 1205ed810051 x
23589
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   995
  HG: --- a/x	Thu Jan 01 00:00:00 1970 +0000
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   996
  HG: +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   997
  HG: @@ -1,1 +0,0 @@
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
   998
  HG: -x
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30432
diff changeset
   999
  HG: diff -r 1205ed810051 y
23589
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
  1000
  HG: --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
  1001
  HG: +++ b/y	Thu Jan 01 00:00:00 1970 +0000
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
  1002
  HG: @@ -0,0 +1,1 @@
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
  1003
  HG: +y
23588
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
  1004
25392
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1005
  $ echo cccc >> cc
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1006
  $ hg status -amr
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1007
  M cc
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1008
  $ HGEDITOR=cat hg commit --amend -e -m "cc should be excluded" -X cc
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1009
  cc should be excluded
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1010
  
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1011
  HG: M: 
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1012
  HG: A: foo y
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1013
  HG: R: a x
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30432
diff changeset
  1014
  HG: diff -r 1205ed810051 a
25392
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1015
  HG: --- a/a	Thu Jan 01 00:00:00 1970 +0000
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1016
  HG: +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1017
  HG: @@ -1,2 +0,0 @@
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1018
  HG: -a
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1019
  HG: -a
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30432
diff changeset
  1020
  HG: diff -r 1205ed810051 foo
25392
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1021
  HG: --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1022
  HG: +++ b/foo	Thu Jan 01 00:00:00 1970 +0000
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1023
  HG: @@ -0,0 +1,1 @@
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1024
  HG: +foo
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30432
diff changeset
  1025
  HG: diff -r 1205ed810051 x
25392
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1026
  HG: --- a/x	Thu Jan 01 00:00:00 1970 +0000
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1027
  HG: +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1028
  HG: @@ -1,1 +0,0 @@
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1029
  HG: -x
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30432
diff changeset
  1030
  HG: diff -r 1205ed810051 y
25392
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1031
  HG: --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1032
  HG: +++ b/y	Thu Jan 01 00:00:00 1970 +0000
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1033
  HG: @@ -0,0 +1,1 @@
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1034
  HG: +y
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
  1035
23071
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1036
Check for issue4405
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1037
-------------------
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1038
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1039
Setup the repo with a file that gets moved in a second commit.
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1040
  $ hg init repo
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1041
  $ cd repo
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1042
  $ touch a0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1043
  $ hg add a0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1044
  $ hg commit -m a0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1045
  $ hg mv a0 a1
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1046
  $ hg commit -m a1
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1047
  $ hg up -q 0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1048
  $ hg log -G --template '{rev} {desc}'
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1049
  o  1 a1
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1050
  |
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1051
  @  0 a0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1052
  
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1053
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1054
Now we branch the repro, but re-use the file contents, so we have a divergence
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1055
in the file revlog topology and the changelog topology.
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1056
  $ hg revert --rev 1 --all
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1057
  removing a0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1058
  adding a1
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1059
  $ hg ci -qm 'a1-amend'
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1060
  $ hg log -G --template '{rev} {desc}'
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1061
  @  2 a1-amend
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1062
  |
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1063
  | o  1 a1
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1064
  |/
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1065
  o  0 a0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1066
  
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1067
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
  1068
The way mercurial does amends is by folding the working copy and old commit
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
  1069
together into another commit (rev 3). During this process, _findlimit is called
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
  1070
to  check how far back to look for the transitive closure of file copy
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
  1071
information, but due to the divergence of the filelog and changelog graph
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
  1072
topologies, before _findlimit was fixed, it returned a rev which was not far
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
  1073
enough back in this case.
23071
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1074
  $ hg mv a1 a2
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1075
  $ hg status --copies --rev 0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1076
  A a2
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1077
    a0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1078
  R a0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1079
  $ hg ci --amend -q
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1080
  $ hg log -G --template '{rev} {desc}'
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
  1081
  @  3 a1-amend
23071
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1082
  |
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1083
  | o  1 a1
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1084
  |/
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1085
  o  0 a0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1086
  
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1087
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1088
Before the fix, the copy information was lost.
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1089
  $ hg status --copies --rev 0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1090
  A a2
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1091
    a0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
  1092
  R a0
24169
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1093
  $ cd ..
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1094
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1095
Check that amend properly preserve rename from directory rename (issue-4516)
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1096
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1097
If a parent of the merge renames a full directory, any files added to the old
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1098
directory in the other parent will be renamed to the new directory. For some
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1099
reason, the rename metadata was when amending such merge. This test ensure we
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1100
do not regress. We have a dedicated repo because it needs a setup with renamed
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1101
directory)
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1102
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1103
  $ hg init issue4516
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1104
  $ cd issue4516
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1105
  $ mkdir olddirname
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1106
  $ echo line1 > olddirname/commonfile.py
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1107
  $ hg add olddirname/commonfile.py
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1108
  $ hg ci -m first
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1109
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1110
  $ hg branch newdirname
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1111
  marked working directory as branch newdirname
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1112
  (branches are permanent and global, did you want a bookmark?)
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1113
  $ hg mv olddirname newdirname
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1114
  moving olddirname/commonfile.py to newdirname/commonfile.py (glob)
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1115
  $ hg ci -m rename
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1116
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1117
  $ hg update default
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1118
  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1119
  $ echo line1 > olddirname/newfile.py
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1120
  $ hg add olddirname/newfile.py
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1121
  $ hg ci -m log
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1122
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1123
  $ hg up newdirname
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1124
  1 files updated, 0 files merged, 2 files removed, 0 files unresolved
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1125
  $ # create newdirname/newfile.py
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1126
  $ hg merge default
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1127
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1128
  (branch merge, don't forget to commit)
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1129
  $ hg ci -m add
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1130
  $ 
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1131
  $ hg debugrename newdirname/newfile.py
24229
f903689680e6 test-commit-amend: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 24169
diff changeset
  1132
  newdirname/newfile.py renamed from olddirname/newfile.py:690b295714aed510803d3020da9c70fca8336def (glob)
24169
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1133
  $ hg status -C --change .
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1134
  A newdirname/newfile.py
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1135
  $ hg status -C --rev 1
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1136
  A newdirname/newfile.py
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1137
  $ hg status -C --rev 2
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1138
  A newdirname/commonfile.py
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1139
    olddirname/commonfile.py
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1140
  A newdirname/newfile.py
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1141
    olddirname/newfile.py
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1142
  R olddirname/commonfile.py
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1143
  R olddirname/newfile.py
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1144
  $ hg debugindex newdirname/newfile.py
26927
0829ed3b75e1 test: use general delta for 'test-commit-amend.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26750
diff changeset
  1145
     rev    offset  length  delta linkrev nodeid       p1           p2
30792
4215dc1b708b revlog: make compressed size comparisons consistent
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30695
diff changeset
  1146
       0         0      89     -1       3 34a4d536c0c0 000000000000 000000000000
24169
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1147
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1148
  $ echo a >> newdirname/commonfile.py
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1149
  $ hg ci --amend -m bug
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1150
  $ hg debugrename newdirname/newfile.py
24229
f903689680e6 test-commit-amend: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 24169
diff changeset
  1151
  newdirname/newfile.py renamed from olddirname/newfile.py:690b295714aed510803d3020da9c70fca8336def (glob)
24169
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1152
  $ hg debugindex newdirname/newfile.py
26927
0829ed3b75e1 test: use general delta for 'test-commit-amend.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26750
diff changeset
  1153
     rev    offset  length  delta linkrev nodeid       p1           p2
30792
4215dc1b708b revlog: make compressed size comparisons consistent
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30695
diff changeset
  1154
       0         0      89     -1       3 34a4d536c0c0 000000000000 000000000000
24169
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
  1155
30240
8237c3359db5 tests: test preserving execbit changes at amending only on execbit platform
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30211
diff changeset
  1156
#if execbit
8237c3359db5 tests: test preserving execbit changes at amending only on execbit platform
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30211
diff changeset
  1157
29181
dae38633eba8 localrepo: prevent executable-bit only changes from being lost on amend
Mateusz Kwapich <mitrandir@fb.com>
parents: 28627
diff changeset
  1158
Test if amend preserves executable bit changes
dae38633eba8 localrepo: prevent executable-bit only changes from being lost on amend
Mateusz Kwapich <mitrandir@fb.com>
parents: 28627
diff changeset
  1159
  $ chmod +x newdirname/commonfile.py
dae38633eba8 localrepo: prevent executable-bit only changes from being lost on amend
Mateusz Kwapich <mitrandir@fb.com>
parents: 28627
diff changeset
  1160
  $ hg ci -m chmod
dae38633eba8 localrepo: prevent executable-bit only changes from being lost on amend
Mateusz Kwapich <mitrandir@fb.com>
parents: 28627
diff changeset
  1161
  $ hg ci --amend -m "chmod amended"
dae38633eba8 localrepo: prevent executable-bit only changes from being lost on amend
Mateusz Kwapich <mitrandir@fb.com>
parents: 28627
diff changeset
  1162
  $ hg ci --amend -m "chmod amended second time"
dae38633eba8 localrepo: prevent executable-bit only changes from being lost on amend
Mateusz Kwapich <mitrandir@fb.com>
parents: 28627
diff changeset
  1163
  $ hg log -p --git -r .
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
  1164
  changeset:   7:b1326f52dddf
29181
dae38633eba8 localrepo: prevent executable-bit only changes from being lost on amend
Mateusz Kwapich <mitrandir@fb.com>
parents: 28627
diff changeset
  1165
  branch:      newdirname
dae38633eba8 localrepo: prevent executable-bit only changes from being lost on amend
Mateusz Kwapich <mitrandir@fb.com>
parents: 28627
diff changeset
  1166
  tag:         tip
34085
e8a7c1a0565a cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents: 34059
diff changeset
  1167
  parent:      4:7fd235f7cb2f
29181
dae38633eba8 localrepo: prevent executable-bit only changes from being lost on amend
Mateusz Kwapich <mitrandir@fb.com>
parents: 28627
diff changeset
  1168
  user:        test
dae38633eba8 localrepo: prevent executable-bit only changes from being lost on amend
Mateusz Kwapich <mitrandir@fb.com>
parents: 28627
diff changeset
  1169
  date:        Thu Jan 01 00:00:00 1970 +0000
dae38633eba8 localrepo: prevent executable-bit only changes from being lost on amend
Mateusz Kwapich <mitrandir@fb.com>
parents: 28627
diff changeset
  1170
  summary:     chmod amended second time
dae38633eba8 localrepo: prevent executable-bit only changes from being lost on amend
Mateusz Kwapich <mitrandir@fb.com>
parents: 28627
diff changeset
  1171
  
dae38633eba8 localrepo: prevent executable-bit only changes from being lost on amend
Mateusz Kwapich <mitrandir@fb.com>
parents: 28627
diff changeset
  1172
  diff --git a/newdirname/commonfile.py b/newdirname/commonfile.py
dae38633eba8 localrepo: prevent executable-bit only changes from being lost on amend
Mateusz Kwapich <mitrandir@fb.com>
parents: 28627
diff changeset
  1173
  old mode 100644
dae38633eba8 localrepo: prevent executable-bit only changes from being lost on amend
Mateusz Kwapich <mitrandir@fb.com>
parents: 28627
diff changeset
  1174
  new mode 100755
dae38633eba8 localrepo: prevent executable-bit only changes from being lost on amend
Mateusz Kwapich <mitrandir@fb.com>
parents: 28627
diff changeset
  1175
  
30240
8237c3359db5 tests: test preserving execbit changes at amending only on execbit platform
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30211
diff changeset
  1176
#endif
34059
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1177
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1178
Test amend with file inclusion options
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1179
--------------------------------------
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1180
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1181
These tests ensure that we are always amending some files that were part of the
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1182
pre-amend commit. We want to test that the remaining files in the pre-amend
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1183
commit were not changed in the amended commit. We do so by performing a diff of
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1184
the amended commit against its parent commit.
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1185
  $ cd ..
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1186
  $ hg init testfileinclusions
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1187
  $ cd testfileinclusions
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1188
  $ echo a > a
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1189
  $ echo b > b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1190
  $ hg commit -Aqm "Adding a and b"
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1191
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1192
Only add changes to a particular file
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1193
  $ echo a >> a
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1194
  $ echo b >> b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1195
  $ hg commit --amend -I a
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1196
  $ hg diff --git -r null -r .
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1197
  diff --git a/a b/a
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1198
  new file mode 100644
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1199
  --- /dev/null
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1200
  +++ b/a
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1201
  @@ -0,0 +1,2 @@
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1202
  +a
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1203
  +a
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1204
  diff --git a/b b/b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1205
  new file mode 100644
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1206
  --- /dev/null
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1207
  +++ b/b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1208
  @@ -0,0 +1,1 @@
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1209
  +b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1210
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1211
  $ echo a >> a
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1212
  $ hg commit --amend b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1213
  $ hg diff --git -r null -r .
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1214
  diff --git a/a b/a
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1215
  new file mode 100644
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1216
  --- /dev/null
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1217
  +++ b/a
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1218
  @@ -0,0 +1,2 @@
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1219
  +a
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1220
  +a
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1221
  diff --git a/b b/b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1222
  new file mode 100644
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1223
  --- /dev/null
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1224
  +++ b/b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1225
  @@ -0,0 +1,2 @@
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1226
  +b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1227
  +b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1228
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1229
Exclude changes to a particular file
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1230
  $ echo b >> b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1231
  $ hg commit --amend -X a
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1232
  $ hg diff --git -r null -r .
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1233
  diff --git a/a b/a
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1234
  new file mode 100644
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1235
  --- /dev/null
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1236
  +++ b/a
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1237
  @@ -0,0 +1,2 @@
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1238
  +a
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1239
  +a
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1240
  diff --git a/b b/b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1241
  new file mode 100644
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1242
  --- /dev/null
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1243
  +++ b/b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1244
  @@ -0,0 +1,3 @@
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1245
  +b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1246
  +b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1247
  +b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1248
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1249
Check the addremove flag
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1250
  $ echo c > c
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1251
  $ rm a
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1252
  $ hg commit --amend -A
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1253
  removing a
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1254
  adding c
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1255
  $ hg diff --git -r null -r .
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1256
  diff --git a/b b/b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1257
  new file mode 100644
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1258
  --- /dev/null
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1259
  +++ b/b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1260
  @@ -0,0 +1,3 @@
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1261
  +b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1262
  +b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1263
  +b
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1264
  diff --git a/c b/c
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1265
  new file mode 100644
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1266
  --- /dev/null
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1267
  +++ b/c
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1268
  @@ -0,0 +1,1 @@
6fb5a06b92c6 amend: add tests for amending only some files from commit to be amended
Saurabh Singh <singhsrb@fb.com>
parents: 33774
diff changeset
  1269
  +c