annotate tests/test-commit-amend.t @ 26631:e077ce385609

localrepo: restore dirstate to one before rollbacking if not parent-gone 'localrepository.rollback()' explicilty restores dirstate, only if at least one of current parents of the working directory is removed at rollbacking (a.k.a "parent-gone"). After DirstateTransactionPlan, 'dirstate.write()' will cause marking '.hg/dirstate' as a file to be restored at rollbacking. https://mercurial.selenic.com/wiki/DirstateTransactionPlan Then, 'transaction.rollback()' restores '.hg/dirstate' regardless of parents of the working directory at that time, and this causes unexpected dirstate changes if not "parent-gone" (e.g. "hg update" to another branch after "hg commit" or so, then "hg rollback"). To avoid such situation, this patch restores dirstate to one before rollbacking if not "parent-gone". before: b1. restore dirstate explicitly, if "parent-gone" after: a1. save dirstate before actual rollbacking via dirstateguard a2. restore dirstate via 'transaction.rollback()' a3. if "parent-gone" - discard backup (a1) - restore dirstate from 'undo.dirstate' a4. otherwise, restore dirstate from backup (a1) Even though restoring dirstate at (a3) after (a2) seems redundant, this patch keeps this existing code path, because: - it isn't ensured that 'dirstate.write()' was invoked at least once while transaction running If not, '.hg/dirstate' isn't restored at (a2). In addition to it, rude 3rd party extension invoking 'dirstate.write()' without 'repo' while transaction running (see subsequent patches for detail) may break consistency of a file backup-ed by transaction. - this patch mainly focuses on changes for DirstateTransactionPlan Restoring dirstate at (a3) itself should be cheaper enough than rollbacking itself. Redundancy will be removed in next step. Newly added test is almost meaningless at this point. It will be used to detect regression while implementing delayed dirstate write out.
author FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
date Tue, 13 Oct 2015 12:25:43 -0700
parents ef1eb6df7071
children 9f9ec4abe700
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
1 $ hg init
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
2
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
3 Setup:
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
4
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
5 $ echo a >> a
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
6 $ hg ci -Am 'base'
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
7 adding a
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
8
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
9 Refuse to amend public csets:
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
10
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
11 $ hg phase -r . -p
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
12 $ hg ci --amend
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
13 abort: cannot amend public changesets
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
14 [255]
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
15 $ hg phase -r . -f -d
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
16
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
17 $ echo a >> a
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
18 $ hg ci -Am 'base1'
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
19
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
20 Nothing to amend:
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 $ hg ci --amend
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
23 nothing changed
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
24 [1]
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
25
17060
69fa0459dd3b test-commit-amend: adapt for Windows after fba17a64fa49
Adrian Buehlmann <adrian@cadifra.com>
parents: 17059
diff changeset
26 $ cat >> $HGRCPATH <<EOF
69fa0459dd3b test-commit-amend: adapt for Windows after fba17a64fa49
Adrian Buehlmann <adrian@cadifra.com>
parents: 17059
diff changeset
27 > [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
28 > 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
29 > EOF
17049
2440822446ce amend: disable hooks when creating intermediate commit (issue3501)
Idan Kamara <idankk86@gmail.com>
parents: 16630
diff changeset
30
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
31 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
32 (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
33
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
34 $ 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
35 $ 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
36 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
37 43f1ba15f28a tip
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
38 saved backup bundle to $TESTTMP/.hg/strip-backup/489edb5b847d-f1bf3ab8-amend-backup.hg (glob)
17049
2440822446ce amend: disable hooks when creating intermediate commit (issue3501)
Idan Kamara <idankk86@gmail.com>
parents: 16630
diff changeset
39 $ echo 'pretxncommit.foo = ' >> $HGRCPATH
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
40 $ 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
41 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
42 --- 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
43 +++ 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
44 @@ -1,1 +1,3 @@
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
45 a
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
46 +a
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
47 +a
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
48 $ 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
49 changeset: 1:43f1ba15f28a
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
50 tag: tip
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
51 user: test
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
52 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
53 summary: amend base1
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
54
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
55 changeset: 0:ad120869acf0
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: base
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
18197
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
61 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
62
18197
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
63 $ 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
64 > #!/bin/sh
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
65 > echo "" > "$1"
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
66 > __EOF__
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
67 $ 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
68 $ 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
69 $ hg summary
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
70 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
71 amend base1
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
72 branch: default
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
73 commit: 1 added, 1 unknown
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
74 update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
75 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
76 $ 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
77 transaction abort!
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
78 rollback completed
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
79 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
80 [255]
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
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
85 commit: 1 added, 1 unknown
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
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
89 Add new file:
153659e86a5f amend: invalidate dirstate in case of failure (issue3670)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
90 $ hg ci --amend -m 'amend base1 new file'
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
91 saved backup bundle to $TESTTMP/.hg/strip-backup/43f1ba15f28a-7a3b3496-amend-backup.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
92
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
93 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
94 (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
95 (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
96
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
97 $ 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
98 $ 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
99 $ HGEDITOR="\"sh\" \"`pwd`/editor.sh\"" hg ci --amend --logfile ../logfile
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
100 saved backup bundle to $TESTTMP/.hg/strip-backup/b8e3cb2b3882-0b55739a-amend-backup.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
101
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
102 $ hg cat b
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
103 b: no such file in rev 74609c7f506e
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
104 [1]
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
105
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
106 No changes, just a different message:
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
107
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
108 $ hg ci -v --amend -m 'no changes, new message'
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
109 amending changeset 74609c7f506e
a8aba2921456 amend: add noise in extra to avoid creating obsolescence cycle (issue3664)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17475
diff changeset
110 copying changeset 74609c7f506e to ad120869acf0
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
111 committing files:
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
112 a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
113 committing manifest
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
114 committing changelog
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
115 stripping amended changeset 74609c7f506e
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
116 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
117 uncompressed size of bundle content:
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
118 250 (changelog)
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
119 143 (manifests)
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
120 109 a
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
121 saved backup bundle to $TESTTMP/.hg/strip-backup/74609c7f506e-1bfde511-amend-backup.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
122 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
123 uncompressed size of bundle content:
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
124 246 (changelog)
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
125 143 (manifests)
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
126 109 a
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
127 adding branch
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
128 adding changesets
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
129 adding manifests
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
130 adding file changes
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
131 added 1 changesets with 1 changes to 1 files
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
132 committed changeset 1:1cd866679df8
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
133 $ 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
134 diff -r ad120869acf0 -r 1cd866679df8 a
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
135 --- 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
136 +++ 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
137 @@ -1,1 +1,3 @@
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
138 a
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
139 +a
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
140 +a
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
141 $ 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
142 changeset: 1:1cd866679df8
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
143 tag: tip
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
144 user: test
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
145 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
146 summary: no changes, new message
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
147
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
148 changeset: 0:ad120869acf0
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
149 user: test
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
150 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
151 summary: base
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
152
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
153
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
154 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
155
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
156 $ echo '[defaults]' >> $HGRCPATH
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
157 $ echo 'commit=' >> $HGRCPATH
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
158
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
159 Test -u/-d:
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
160
22249
f5ff18f65b73 commit: change "editform" to distinguish merge commits from other (--amend)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21947
diff changeset
161 $ 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
162 > 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
163 > true
f5ff18f65b73 commit: change "editform" to distinguish merge commits from other (--amend)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21947
diff changeset
164 > EOF
f5ff18f65b73 commit: change "editform" to distinguish merge commits from other (--amend)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21947
diff changeset
165 $ 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
166 HGEDITFORM=commit.amend.normal
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
167 saved backup bundle to $TESTTMP/.hg/strip-backup/1cd866679df8-5f5bcb85-amend-backup.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
168 $ echo a >> a
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
169 $ hg ci --amend -u foo -d '1 0'
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
170 saved backup bundle to $TESTTMP/.hg/strip-backup/780e6f23e03d-83b10a27-amend-backup.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
171 $ hg log -r .
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
172 changeset: 1:5f357c7560ab
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
173 tag: tip
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
174 user: foo
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
175 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
176 summary: no changes, new message
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
177
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
178
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
179 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
180
16901
5b89700cce30 tests: consistently use a HGEDITOR pattern that works with msys on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16900
diff changeset
181 $ cat > editor.sh << '__EOF__'
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
182 > #!/bin/sh
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
183 > cat $1
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
184 > echo "another precious commit message" > "$1"
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
185 > __EOF__
20771
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
186
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
187 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
188
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
189 $ 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
190 > [hooks]
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
191 > 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
192 > __EOF__
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
193
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
194 $ 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
195 $ hg commit --amend -v -m "message given from command line"
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
196 amending changeset 5f357c7560ab
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
197 copying changeset 5f357c7560ab to ad120869acf0
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
198 committing files:
20771
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
199 a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
200 committing manifest
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
201 committing changelog
20771
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
202 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
203 transaction abort!
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
204 rollback completed
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
205 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
206 [255]
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
207 $ 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
208 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
209
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
210 $ 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
211 $ HGEDITOR="\"sh\" \"`pwd`/editor.sh\"" hg commit --amend -v
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
212 amending changeset 5f357c7560ab
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
213 copying changeset 5f357c7560ab to ad120869acf0
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
214 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
215
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
216
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
217 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
218 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
219 HG: --
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
220 HG: user: foo
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
221 HG: branch 'default'
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
222 HG: changed a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
223 committing files:
20771
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
224 a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
225 committing manifest
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
226 committing changelog
20771
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
227 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
228 transaction abort!
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
229 rollback completed
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
230 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
231 [255]
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
232
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
233 $ 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
234 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
235
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
236 $ 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
237 > [hooks]
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
238 > 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
239 > __EOF__
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
240
434619dae569 amend: save commit message into ".hg/last-message.txt"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20700
diff changeset
241 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
242
16901
5b89700cce30 tests: consistently use a HGEDITOR pattern that works with msys on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16900
diff changeset
243 $ HGEDITOR="\"sh\" \"`pwd`/editor.sh\"" hg commit --amend -v
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
244 amending changeset 5f357c7560ab
a8aba2921456 amend: add noise in extra to avoid creating obsolescence cycle (issue3664)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17475
diff changeset
245 copying changeset 5f357c7560ab to ad120869acf0
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
246 no changes, new message
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
247
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
248
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
249 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
250 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
251 HG: --
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
252 HG: user: foo
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
253 HG: branch 'default'
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
254 HG: changed a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
255 committing files:
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
256 a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
257 committing manifest
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
258 committing changelog
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
259 stripping amended changeset 5f357c7560ab
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
260 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
261 uncompressed size of bundle content:
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
262 238 (changelog)
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
263 143 (manifests)
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
264 111 a
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
265 saved backup bundle to $TESTTMP/.hg/strip-backup/5f357c7560ab-e7c84ade-amend-backup.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
266 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
267 uncompressed size of bundle content:
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
268 246 (changelog)
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
269 143 (manifests)
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
270 111 a
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
271 adding branch
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
272 adding changesets
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
273 adding manifests
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
274 adding file changes
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
275 added 1 changesets with 1 changes to 1 files
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
276 committed changeset 1:7ab3bf440b54
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
277
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
278 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
279
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
280 $ 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
281 $ HGEDITOR="\"sh\" \"`pwd`/editor.sh\"" hg commit --amend -v
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
282 amending changeset 7ab3bf440b54
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
283 committing files:
17473
9732473aa24b amend: use an explicit commit message for temporary amending commit
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17462
diff changeset
284 a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
285 committing manifest
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
286 committing changelog
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
287 copying changeset a0ea9b1a4c8c to ad120869acf0
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
288 another precious commit message
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
289
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
290
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
291 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
292 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
293 HG: --
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
294 HG: user: foo
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
295 HG: branch 'default'
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
296 HG: changed a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
297 committing files:
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
298 a
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
299 committing manifest
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23748
diff changeset
300 committing changelog
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
301 stripping intermediate changeset a0ea9b1a4c8c
a8aba2921456 amend: add noise in extra to avoid creating obsolescence cycle (issue3664)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17475
diff changeset
302 stripping amended changeset 7ab3bf440b54
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
303 2 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
304 uncompressed size of bundle content:
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
305 450 (changelog)
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
306 282 (manifests)
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
307 209 a
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
308 saved backup bundle to $TESTTMP/.hg/strip-backup/7ab3bf440b54-8e3b5088-amend-backup.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
309 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
310 uncompressed size of bundle content:
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
311 246 (changelog)
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
312 143 (manifests)
4ab66de46a96 bundle: when verbose, show what takes up the space in the generated bundle
Mads Kiilerich <madski@unity3d.com>
parents: 23589
diff changeset
313 113 a
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
314 adding branch
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
315 adding changesets
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
316 adding manifests
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
317 adding file changes
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
318 added 1 changesets with 1 changes to 1 files
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
319 committed changeset 1:ea22a388757c
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
320
16901
5b89700cce30 tests: consistently use a HGEDITOR pattern that works with msys on windows
Mads Kiilerich <mads@kiilerich.com>
parents: 16900
diff changeset
321 $ rm editor.sh
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
322 $ hg log -r .
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
323 changeset: 1:ea22a388757c
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
324 tag: tip
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
325 user: foo
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
326 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
327 summary: another precious commit message
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
328
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
329
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
330 Moving bookmarks, preserve active bookmark:
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 $ hg book book1
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
333 $ hg book book2
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
334 $ hg ci --amend -m 'move bookmarks'
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
335 saved backup bundle to $TESTTMP/.hg/strip-backup/ea22a388757c-e51094db-amend-backup.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
336 $ hg book
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
337 book1 1:6cec5aa930e2
a8aba2921456 amend: add noise in extra to avoid creating obsolescence cycle (issue3664)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17475
diff changeset
338 * book2 1:6cec5aa930e2
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
339 $ echo a >> a
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
340 $ hg ci --amend -m 'move bookmarks'
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
341 saved backup bundle to $TESTTMP/.hg/strip-backup/6cec5aa930e2-e9b06de4-amend-backup.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
342 $ hg book
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
343 book1 1:48bb6e53a15f
a8aba2921456 amend: add noise in extra to avoid creating obsolescence cycle (issue3664)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17475
diff changeset
344 * book2 1:48bb6e53a15f
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
345
18198
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
346 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
347
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
348 $ 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
349 > #!/bin/sh
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
350 > echo "" > "$1"
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
351 > __EOF__
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
352 $ 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
353 $ 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
354 transaction abort!
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
355 rollback completed
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
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
359 book1 1:48bb6e53a15f
9b4adaef0db9 amend: prevent loss of bookmark on failed amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18197
diff changeset
360 * book2 1:48bb6e53a15f
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'
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
377 saved backup bundle to $TESTTMP/.hg/strip-backup/8ac881fbf49d-fd962fef-amend-backup.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
378 $ hg branches
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
379 default 2:ce12b0b57d46
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'
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
393 saved backup bundle to $TESTTMP/.hg/strip-backup/c962248fa264-6701c392-amend-backup.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
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
402 saved backup bundle to $TESTTMP/.hg/strip-backup/027371728205-49c0c55d-amend-backup.hg (glob)
16458
55982f62651f commit: add option to amend the working dir parent
Idan Kamara <idankk86@gmail.com>
parents:
diff changeset
403 $ hg branches
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
404 default 2:ce12b0b57d46
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'
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
423 saved backup bundle to $TESTTMP/.hg/strip-backup/b8c6eac7f12e-adaaa8b1-amend-backup.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'
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
431 saved backup bundle to $TESTTMP/.hg/strip-backup/7f9761d65613-d37aa788-amend-backup.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
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
442 saved backup bundle to $TESTTMP/.hg/strip-backup/9e8c5f7e3d95-90259f67-amend-backup.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
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
454 saved backup bundle to $TESTTMP/.hg/strip-backup/24aa8eacce2b-7059e0f1-amend-backup.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'"
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
474 saved backup bundle to $TESTTMP/.hg/strip-backup/3837aa2a2fdb-2be01fd1-amend-backup.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''"
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
478 saved backup bundle to $TESTTMP/.hg/strip-backup/c05c06be7514-ed28c4cd-amend-backup.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'
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
495 saved backup bundle to $TESTTMP/.hg/strip-backup/bd010aea3f39-eedb103b-amend-backup.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
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
497 extra: amend_source=bd010aea3f39f3fb2a2f884b9ccb0471cd77398e
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]
a0f89c852a0c obsolete: update test-commit-amend to use obsolete option
Durham Goode <durham@fb.com>
parents: 22249
diff changeset
522 > evolution=createmarkers,allowunstable
17475
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
523 > EOF
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
524
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
525 Amend with no files changes
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
526
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
527 $ hg id -n
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
528 13
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
529 $ hg ci --amend -m 'babar'
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
530 $ hg id -n
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
531 14
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
532 $ hg log -Gl 3 --style=compact
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
533 @ 14[tip]:11 b650e6ee8614 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
534 | babar
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
535 |
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
536 | 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
537 | | fork
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
538 | |
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
539 o | 11 3334b7925910 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
540 | | a''
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
541 | |
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
542 $ hg log -Gl 4 --hidden --style=compact
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
543 @ 14[tip]:11 b650e6ee8614 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
544 | babar
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
545 |
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
546 | x 13:11 68ff8ff97044 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
547 |/ amend for phase
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
548 |
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
549 | 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
550 | | fork
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
551 | |
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
552 o | 11 3334b7925910 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
553 | | a''
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
554 | |
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
555
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
556 Amend with files changes
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
557
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
558 (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
559 ride of)
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
560
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
561 $ echo 'babar' >> a
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
562 $ hg commit --amend
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
563 $ hg log -Gl 6 --hidden --style=compact
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
564 @ 16[tip]:11 9f9e9bccf56c 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
565 | babar
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
566 |
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
567 | x 15 90fef497c56f 1970-01-01 00:00 +0000 test
a8aba2921456 amend: add noise in extra to avoid creating obsolescence cycle (issue3664)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17475
diff changeset
568 | | temporary amend commit for b650e6ee8614
17475
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
569 | |
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
570 | x 14:11 b650e6ee8614 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
571 |/ babar
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
572 |
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
573 | x 13:11 68ff8ff97044 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
574 |/ amend for phase
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
575 |
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
576 | 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
577 | | fork
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
578 | |
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
579 o | 11 3334b7925910 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
580 | | a''
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
581 | |
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
582
63e45aee46d4 amend: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17473
diff changeset
583
18399
66cec3c2ee00 tests: more comment cleanup related to obsolescence
Kevin Bullock <kbullock@ringworld.org>
parents: 18398
diff changeset
584 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
585 ---------------------------------------------------------------------
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
18267
5bb610f87d1d clfilter: enforce hidden changeset globally
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18206
diff changeset
587 $ hg id -r 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
588 b650e6ee8614 (a)
18267
5bb610f87d1d clfilter: enforce hidden changeset globally
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18206
diff changeset
589 $ 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
590 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
591 $ 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
592 $ hg id
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 b99e5df575f7 (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
594
18398
1a00c8451640 test: fix in-test comments related to obsolescence
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18267
diff changeset
595 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
596 ---------------------------------------------------------------------
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 $ 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
599 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
600 $ 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
601 $ hg log --style compact -r 'children(.)'
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 18[tip]:11 b99e5df575f7 1970-01-01 00:00 +0000 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
603 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
604
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 $ hg commit --amend
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 log -r 'unstable()'
c5bd753c5bc6 amend: allow amend of non-head when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
607 changeset: 18:b99e5df575f7
c5bd753c5bc6 amend: allow amend of non-head when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
608 branch: 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
609 parent: 11:3334b7925910
c5bd753c5bc6 amend: allow amend of non-head when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17924
diff changeset
610 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
611 date: Thu Jan 01 00:00:00 1970 +0000
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 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
613
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
614
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
615 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
616
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
617 $ hg up -q default
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
618 $ hg branch -q bar
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
619 $ hg cp a aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
620 $ hg mv z zz
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
621 $ echo cc > cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
622 $ hg add cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
623 $ hg ci -m aazzcc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
624 $ hg up -q default
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
625 $ echo a >> a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
626 $ echo dd > cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
627 $ hg add cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
628 $ hg ci -m aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
629 $ hg merge -q bar
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 25393
diff changeset
630 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
631 [1]
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
632 $ 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
633 (no more unresolved files)
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
634 $ hg ci -m 'merge bar'
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
635 $ hg log --config diff.git=1 -pr .
21693
9c35f3a8cac4 merge: drop the quotes around commit description
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21519
diff changeset
636 changeset: 23:93cd4445f720
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
637 tag: tip
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
638 parent: 22:30d96aeaf27b
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
639 parent: 21:1aa437659d19
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
640 user: test
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
641 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
642 summary: merge bar
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
643
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
644 diff --git a/a b/aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
645 copy from a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
646 copy to aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
647 diff --git a/cc b/cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
648 --- a/cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
649 +++ b/cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
650 @@ -1,1 +1,5 @@
21693
9c35f3a8cac4 merge: drop the quotes around commit description
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21519
diff changeset
651 +<<<<<<< local: 30d96aeaf27b - test: aa
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
652 dd
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
653 +=======
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
654 +cc
21693
9c35f3a8cac4 merge: drop the quotes around commit description
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21519
diff changeset
655 +>>>>>>> other: 1aa437659d19 bar - test: aazzcc
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
656 diff --git a/z b/zz
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
657 rename from z
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
658 rename to zz
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
659
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
660 $ hg debugrename aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
661 aa renamed from a:a80d06849b333b8a3d5c445f8ba3142010dcdc9e
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
662 $ hg debugrename zz
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
663 zz renamed from z:69a1b67522704ec122181c0890bd16e9d3e7516a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
664 $ hg debugrename cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
665 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
666 $ 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
667 HGEDITFORM=commit.amend.merge
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
668 $ hg log --config diff.git=1 -pr .
21693
9c35f3a8cac4 merge: drop the quotes around commit description
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21519
diff changeset
669 changeset: 24:832b50f2c271
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
670 tag: tip
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
671 parent: 22:30d96aeaf27b
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
672 parent: 21:1aa437659d19
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
673 user: test
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
674 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
675 summary: merge bar (amend message)
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
676
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
677 diff --git a/a b/aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
678 copy from a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
679 copy to aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
680 diff --git a/cc b/cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
681 --- a/cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
682 +++ b/cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
683 @@ -1,1 +1,5 @@
21693
9c35f3a8cac4 merge: drop the quotes around commit description
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21519
diff changeset
684 +<<<<<<< local: 30d96aeaf27b - test: aa
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
685 dd
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
686 +=======
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
687 +cc
21693
9c35f3a8cac4 merge: drop the quotes around commit description
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21519
diff changeset
688 +>>>>>>> other: 1aa437659d19 bar - test: aazzcc
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
689 diff --git a/z b/zz
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
690 rename from z
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
691 rename to zz
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
692
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
693 $ hg debugrename aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
694 aa renamed from a:a80d06849b333b8a3d5c445f8ba3142010dcdc9e
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
695 $ hg debugrename zz
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
696 zz renamed from z:69a1b67522704ec122181c0890bd16e9d3e7516a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
697 $ hg debugrename cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
698 cc not renamed
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
699 $ hg mv zz z
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
700 $ hg ci --amend -m 'merge bar (undo rename)'
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
701 $ hg log --config diff.git=1 -pr .
21693
9c35f3a8cac4 merge: drop the quotes around commit description
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21519
diff changeset
702 changeset: 26:bdafc5c72f74
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
703 tag: tip
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
704 parent: 22:30d96aeaf27b
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
705 parent: 21:1aa437659d19
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
706 user: test
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
707 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
708 summary: merge bar (undo rename)
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
709
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
710 diff --git a/a b/aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
711 copy from a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
712 copy to aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
713 diff --git a/cc b/cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
714 --- a/cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
715 +++ b/cc
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
716 @@ -1,1 +1,5 @@
21693
9c35f3a8cac4 merge: drop the quotes around commit description
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21519
diff changeset
717 +<<<<<<< local: 30d96aeaf27b - test: aa
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
718 dd
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
719 +=======
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
720 +cc
21693
9c35f3a8cac4 merge: drop the quotes around commit description
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21519
diff changeset
721 +>>>>>>> other: 1aa437659d19 bar - test: aazzcc
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
722
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
723 $ hg debugrename z
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
724 z not renamed
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
725
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
726 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
727
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
728 $ hg up -q bar
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
729 $ echo x > x
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
730 $ hg add x
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
731 $ hg ci -m x
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
732 $ hg up -q default
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
733 $ hg merge -q bar
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
734 $ hg mv aa aaa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
735 $ echo aa >> aaa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
736 $ hg ci -m 'merge bar again'
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
737 $ hg log --config diff.git=1 -pr .
21693
9c35f3a8cac4 merge: drop the quotes around commit description
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21519
diff changeset
738 changeset: 28:32f19415b634
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
739 tag: tip
21693
9c35f3a8cac4 merge: drop the quotes around commit description
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21519
diff changeset
740 parent: 26:bdafc5c72f74
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
741 parent: 27:4c94d5bc65f5
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
742 user: test
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
743 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
744 summary: merge bar again
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
745
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
746 diff --git a/aa b/aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
747 deleted file mode 100644
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
748 --- a/aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
749 +++ /dev/null
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
750 @@ -1,2 +0,0 @@
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
751 -a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
752 -a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
753 diff --git a/aaa b/aaa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
754 new file mode 100644
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
755 --- /dev/null
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
756 +++ b/aaa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
757 @@ -0,0 +1,3 @@
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
758 +a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
759 +a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
760 +aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
761 diff --git a/x b/x
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
762 new file mode 100644
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
763 --- /dev/null
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
764 +++ b/x
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
765 @@ -0,0 +1,1 @@
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
766 +x
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
767
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
768 $ hg debugrename aaa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
769 aaa renamed from aa:37d9b5d994eab34eda9c16b195ace52c7b129980
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
770 $ hg mv aaa aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
771 $ 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
772 $ hg log --config diff.git=1 -pr .
21693
9c35f3a8cac4 merge: drop the quotes around commit description
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21519
diff changeset
773 changeset: 30:1e2a06b3d312
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
774 tag: tip
21693
9c35f3a8cac4 merge: drop the quotes around commit description
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21519
diff changeset
775 parent: 26:bdafc5c72f74
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
776 parent: 27:4c94d5bc65f5
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
777 user: test
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
778 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
779 summary: merge bar again (undo rename)
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
780
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
781 diff --git a/aa b/aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
782 --- a/aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
783 +++ b/aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
784 @@ -1,2 +1,3 @@
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
785 a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
786 a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
787 +aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
788 diff --git a/x b/x
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
789 new file mode 100644
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
790 --- /dev/null
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
791 +++ b/x
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
792 @@ -0,0 +1,1 @@
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
793 +x
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
794
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
795 $ hg debugrename aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
796 aa not renamed
18912
4e1ae55e63ef test-commit-amend.t: fix check-code violation from 3a72c89a83ec
Augie Fackler <raf@durin42.com>
parents: 18909
diff changeset
797 $ hg debugrename -r '.^' aa
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
798 aa renamed from a:a80d06849b333b8a3d5c445f8ba3142010dcdc9e
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
799
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
800 Amend a merge changeset (with manifest-level conflicts):
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 $ hg up -q bar
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
803 $ hg rm aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
804 $ hg ci -m 'rm aa'
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
805 $ hg up -q default
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
806 $ echo aa >> aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
807 $ hg ci -m aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
808 $ hg merge -q bar
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
809 local changed aa which remote deleted
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
810 use (c)hanged version or (d)elete? c
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
811 $ hg ci -m 'merge bar (with conflicts)'
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
812 $ hg log --config diff.git=1 -pr .
21693
9c35f3a8cac4 merge: drop the quotes around commit description
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21519
diff changeset
813 changeset: 33:97a298b0c59f
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
814 tag: tip
21693
9c35f3a8cac4 merge: drop the quotes around commit description
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21519
diff changeset
815 parent: 32:3d78ce4226b8
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
816 parent: 31:67db8847a540
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
817 user: test
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
818 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
819 summary: merge bar (with conflicts)
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
820
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
821
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
822 $ hg rm aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
823 $ 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
824 $ hg log --config diff.git=1 -pr .
21693
9c35f3a8cac4 merge: drop the quotes around commit description
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21519
diff changeset
825 changeset: 35:6de0c1bde1c8
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
826 tag: tip
21693
9c35f3a8cac4 merge: drop the quotes around commit description
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21519
diff changeset
827 parent: 32:3d78ce4226b8
18909
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
828 parent: 31:67db8847a540
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
829 user: test
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
830 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
831 summary: merge bar (with conflicts, amended)
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
832
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
833 diff --git a/aa b/aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
834 deleted file mode 100644
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
835 --- a/aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
836 +++ /dev/null
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
837 @@ -1,4 +0,0 @@
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
838 -a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
839 -a
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
840 -aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
841 -aa
3a72c89a83ec amend: support amending merge changesets (issue3778)
Brodie Rao <brodie@sf.io>
parents: 18399
diff changeset
842
19305
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
843 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
844 This shouldn't be possible:
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
845
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
846 $ hg up -q default
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
847 $ hg branch closewithamend
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
848 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
849 $ echo foo > foo
22956
a0f89c852a0c obsolete: update test-commit-amend to use obsolete option
Durham Goode <durham@fb.com>
parents: 22249
diff changeset
850 $ 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
851 $ hg ci -m..
19305
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
852 $ hg ci --amend --close-branch -m 'closing'
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
853 abort: can only close branch heads
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
854 [255]
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
855
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
856 This silliness fails:
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
857
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
858 $ hg branch silliness
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
859 marked working directory as branch silliness
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
860 $ echo b >> b
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
861 $ 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
862 abort: can only close branch heads
b500a663a2c7 commit: amending with --close-branch (issue3445)
Iulian Stana <julian.stana@gmail.com>
parents: 18912
diff changeset
863 [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
864
b0153cb8b64e commit: create new amend changeset as secret correctly for "--secret" option
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19980
diff changeset
865 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
866 ---------------------------------------------------------------------
b0153cb8b64e commit: create new amend changeset as secret correctly for "--secret" option
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19980
diff changeset
867
b0153cb8b64e commit: create new amend changeset as secret correctly for "--secret" option
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19980
diff changeset
868 $ hg phase '.^::.'
b0153cb8b64e commit: create new amend changeset as secret correctly for "--secret" option
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19980
diff changeset
869 35: draft
b0153cb8b64e commit: create new amend changeset as secret correctly for "--secret" option
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19980
diff changeset
870 36: draft
b0153cb8b64e commit: create new amend changeset as secret correctly for "--secret" option
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19980
diff changeset
871 $ 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
872 $ hg phase '.^::.'
b0153cb8b64e commit: create new amend changeset as secret correctly for "--secret" option
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19980
diff changeset
873 35: draft
b0153cb8b64e commit: create new amend changeset as secret correctly for "--secret" option
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 19980
diff changeset
874 38: secret
21036
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
875
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
876 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
877 ---------------------------------------------------
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
878
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
879 $ 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
880 amend as secret
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
881 $ 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
882 $ 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
883 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
884
23587
8063901e56cd memctx: calculate exact status being committed from specified files
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23505
diff changeset
885 $ 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
886 A foo
21036
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
887 $ 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
888 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
889
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
890
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
891 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
892 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
893 HG: --
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
894 HG: user: test
a1a1bd09e4f4 amend: invoke editor forcibly when "--edit" option is specified
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20771
diff changeset
895 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
896 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
897 $ 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
898 editor should be invoked
23071
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
899
23588
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
900 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
901 -----------------------------------------------------------------
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
902
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
903 $ cat >> .hg/hgrc <<EOF
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
904 > [committemplate]
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
905 > 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
906 > HG: M: {file_mods}
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
907 > HG: A: {file_adds}
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
908 > HG: R: {file_dels}
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
909 > {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
910 > EOF
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
911
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
912 $ 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
913 M:
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
914 A: foo
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
915 R:
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
916 $ hg status -amr
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
917 $ 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
918 expecting diff of foo
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
919
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
920 HG: M:
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
921 HG: A: foo
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
922 HG: R:
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
923 HG: diff -r 6de0c1bde1c8 foo
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
924 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
925 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
926 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
927 HG: +foo
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
928
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
929 $ echo y > y
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
930 $ hg add y
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
931 $ 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
932 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
933
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
934 HG: M:
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
935 HG: A: foo y
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
936 HG: R:
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
937 HG: diff -r 6de0c1bde1c8 foo
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
938 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
939 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
940 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
941 HG: +foo
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
942 HG: diff -r 6de0c1bde1c8 y
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
943 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
944 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
945 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
946 HG: +y
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
947
23589
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
948 $ hg rm a
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
949 $ 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
950 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
951
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
952 HG: M:
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
953 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
954 HG: R: a
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
955 HG: diff -r 6de0c1bde1c8 a
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
956 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
957 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
958 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
959 HG: -a
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
960 HG: -a
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
961 HG: diff -r 6de0c1bde1c8 foo
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
962 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
963 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
964 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
965 HG: +foo
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
966 HG: diff -r 6de0c1bde1c8 y
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
967 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
968 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
969 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
970 HG: +y
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
971
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
972 $ hg rm x
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
973 $ 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
974 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
975
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
976 HG: M:
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
977 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
978 HG: R: a x
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
979 HG: diff -r 6de0c1bde1c8 a
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
980 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
981 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
982 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
983 HG: -a
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
984 HG: -a
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
985 HG: diff -r 6de0c1bde1c8 foo
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
986 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
987 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
988 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
989 HG: +foo
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
990 HG: diff -r 6de0c1bde1c8 x
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
991 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
992 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
993 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
994 HG: -x
200215cdf7aa memctx: calculate manifest correctly with newly-removed files (issue4470)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23588
diff changeset
995 HG: diff -r 6de0c1bde1c8 y
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: +++ 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
998 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
999 HG: +y
23588
87a76cff7147 memctx: calculate manifest including newly added files correctly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 23587
diff changeset
1000
25392
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
1001 $ echo cccc >> cc
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
1002 $ hg status -amr
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
1003 M cc
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
1004 $ 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
1005 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
1006
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
1007 HG: M:
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
1008 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
1009 HG: R: a x
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
1010 HG: diff -r 6de0c1bde1c8 a
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
1011 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
1012 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
1013 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
1014 HG: -a
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
1015 HG: -a
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
1016 HG: diff -r 6de0c1bde1c8 foo
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
1017 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
1018 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
1019 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
1020 HG: +foo
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
1021 HG: diff -r 6de0c1bde1c8 x
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
1022 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
1023 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
1024 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
1025 HG: -x
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
1026 HG: diff -r 6de0c1bde1c8 y
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: +++ 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
1029 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
1030 HG: +y
ed18f4acf435 templatekw: compare target context and its parent exactly (issue4690)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24229
diff changeset
1031
23071
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1032 Check for issue4405
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1033 -------------------
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1034
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1035 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
1036 $ hg init repo
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1037 $ cd repo
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1038 $ touch a0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1039 $ hg add a0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1040 $ hg commit -m a0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1041 $ hg mv a0 a1
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1042 $ hg commit -m a1
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1043 $ hg up -q 0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1044 $ 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
1045 o 1 a1
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1046 |
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1047 @ 0 a0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1048
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1049
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1050 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
1051 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
1052 $ hg revert --rev 1 --all
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1053 removing a0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1054 adding a1
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1055 $ hg ci -qm 'a1-amend'
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1056 $ 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
1057 @ 2 a1-amend
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1058 |
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1059 | o 1 a1
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1060 |/
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1061 o 0 a0
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
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1064 The way mercurial does amends is to create a temporary commit (rev 3) and then
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1065 fold the new and old commits together into another commit (rev 4). During this
23139
e53f6b72a0e4 spelling: fixes from proofreading of spell checker issues
Mads Kiilerich <madski@unity3d.com>
parents: 23071
diff changeset
1066 process, _findlimit is called to check how far back to look for the transitive
23071
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1067 closure of file copy information, but due to the divergence of the filelog
23139
e53f6b72a0e4 spelling: fixes from proofreading of spell checker issues
Mads Kiilerich <madski@unity3d.com>
parents: 23071
diff changeset
1068 and changelog graph topologies, before _findlimit was fixed, it returned a rev
23071
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1069 which was not far enough back in this case.
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1070 $ hg mv a1 a2
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1071 $ hg status --copies --rev 0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1072 A a2
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1073 a0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1074 R a0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1075 $ hg ci --amend -q
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1076 $ 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
1077 @ 4 a1-amend
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1078 |
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1079 | o 1 a1
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1080 |/
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1081 o 0 a0
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
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1084 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
1085 $ hg status --copies --rev 0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1086 A a2
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1087 a0
652ab726ba93 amend: fix amending rename commit with diverged topologies (issue4405)
Ryan McElroy <rmcelroy@fb.com>
parents: 22956
diff changeset
1088 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
1089 $ cd ..
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
1090
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
1091 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
1092
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
1093 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
1094 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
1095 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
1096 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
1097 directory)
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
1098
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
1099 $ 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
1100 $ 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
1101 $ 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
1102 $ 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
1103 $ 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
1104 $ 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
1105
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
1106 $ 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
1107 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
1108 (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
1109 $ 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
1110 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
1111 $ 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
1112
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 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
1114 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
1115 $ 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
1116 $ 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
1117 $ 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
1118
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
1119 $ 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
1120 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
1121 $ # 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
1122 $ 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
1123 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
1124 (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
1125 $ 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
1126 $
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
1127 $ hg debugrename newdirname/newfile.py
24229
f903689680e6 test-commit-amend: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 24169
diff changeset
1128 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
1129 $ 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
1130 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
1131 $ 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
1132 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
1133 $ 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
1134 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
1135 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
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 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
1138 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
1139 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
1140 $ hg debugindex 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 rev offset length base linkrev nodeid p1 p2
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
1142 0 0 88 0 3 34a4d536c0c0 000000000000 000000000000
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
1143
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
1144 $ 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
1145 $ 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
1146 $ hg debugrename newdirname/newfile.py
24229
f903689680e6 test-commit-amend: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 24169
diff changeset
1147 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
1148 $ hg debugindex 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
1149 rev offset length base linkrev nodeid p1 p2
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
1150 0 0 88 0 3 34a4d536c0c0 000000000000 000000000000
ac41aa4a66ab amend: check for directory renames for both merge parents (issue4516)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23835
diff changeset
1151