Mercurial > evolve
annotate tests/test-amend.t @ 5259:292de4cca111
obshistory: make patchavailable() handle predecessors too
author | Anton Shestakov <av6@dwimlabs.net> |
---|---|
date | Mon, 13 Jan 2020 16:32:25 +0700 |
parents | 900668a93629 |
children | 8d20c0af010a e8660b28bfee |
rev | line source |
---|---|
263
de62daaf2054
amend: drop --branches, pick it from working directory
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
1 $ cat >> $HGRCPATH <<EOF |
de62daaf2054
amend: drop --branches, pick it from working directory
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
2 > [extensions] |
de62daaf2054
amend: drop --branches, pick it from working directory
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
3 > EOF |
1806
9f42f819267b
evolve: move the extensions to 'hgext3rd'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
1673
diff
changeset
|
4 $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext3rd/evolve/" >> $HGRCPATH |
263
de62daaf2054
amend: drop --branches, pick it from working directory
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
5 |
265
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
6 $ glog() { |
2776
4dd84054ebbb
test: remove reference to the graphlog extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
2730
diff
changeset
|
7 > hg log -G --template '{rev}@{branch}({phase}) {desc|firstline}\n' "$@" |
265
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
8 > } |
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
9 |
630
722b52c75f02
compat: adapt to upstreaming of divergent logic
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
491
diff
changeset
|
10 $ hg init repo --traceback |
263
de62daaf2054
amend: drop --branches, pick it from working directory
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
11 $ cd repo |
de62daaf2054
amend: drop --branches, pick it from working directory
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
12 $ echo a > a |
de62daaf2054
amend: drop --branches, pick it from working directory
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
13 $ hg ci -Am adda |
de62daaf2054
amend: drop --branches, pick it from working directory
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
14 adding a |
de62daaf2054
amend: drop --branches, pick it from working directory
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
15 |
984
b286f77d680c
tests: fix grammar, spelling, punctuation in comments
Greg Ward <greg@gerg.ca>
parents:
976
diff
changeset
|
16 Test that amend captures branches |
263
de62daaf2054
amend: drop --branches, pick it from working directory
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
17 |
de62daaf2054
amend: drop --branches, pick it from working directory
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
18 $ hg branch foo |
de62daaf2054
amend: drop --branches, pick it from working directory
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
19 marked working directory as branch foo |
de62daaf2054
amend: drop --branches, pick it from working directory
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
20 (branches are permanent and global, did you want a bookmark?) |
3221
9f3521cc4c90
amend: add support for storing a note in obsmarker
Pulkit Goyal <7895pulkit@gmail.com>
parents:
3013
diff
changeset
|
21 $ hg amend -d '0 0' -n "this a note on the obsmarker and supported for hg>=4.4" |
441
d702f0d26c6a
obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
385
diff
changeset
|
22 $ hg debugobsolete |
2578
7795a86ba326
effectflag: activate effect flag on test-amend.t test file
Boris Feld <boris.feld@octobus.net>
parents:
1806
diff
changeset
|
23 07f4944404050f47db2e5c5071e0e84e7a27bba9 6a022cbb61d5ba0f03f98ff2d36319dfea1034ae 0 (*) {'ef1': '*', 'user': 'test'} (glob) |
3221
9f3521cc4c90
amend: add support for storing a note in obsmarker
Pulkit Goyal <7895pulkit@gmail.com>
parents:
3013
diff
changeset
|
24 $ hg obslog |
9f3521cc4c90
amend: add support for storing a note in obsmarker
Pulkit Goyal <7895pulkit@gmail.com>
parents:
3013
diff
changeset
|
25 @ 6a022cbb61d5 (1) adda |
9f3521cc4c90
amend: add support for storing a note in obsmarker
Pulkit Goyal <7895pulkit@gmail.com>
parents:
3013
diff
changeset
|
26 | |
9f3521cc4c90
amend: add support for storing a note in obsmarker
Pulkit Goyal <7895pulkit@gmail.com>
parents:
3013
diff
changeset
|
27 x 07f494440405 (0) adda |
5123
900668a93629
obslog: use _successorsetverb() in regular obslog too
Anton Shestakov <av6@dwimlabs.net>
parents:
5079
diff
changeset
|
28 branch-changed(branch) as 6a022cbb61d5 using amend by test (Thu Jan 01 00:00:00 1970 +0000) |
3223
73b4e84df0bd
obsnote: don't add '' to note while showing it in obslog
Pulkit Goyal <7895pulkit@gmail.com>
parents:
3221
diff
changeset
|
29 note: this a note on the obsmarker and supported for hg>=4.4 |
3221
9f3521cc4c90
amend: add support for storing a note in obsmarker
Pulkit Goyal <7895pulkit@gmail.com>
parents:
3013
diff
changeset
|
30 |
263
de62daaf2054
amend: drop --branches, pick it from working directory
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
31 $ hg branch |
de62daaf2054
amend: drop --branches, pick it from working directory
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
32 foo |
de62daaf2054
amend: drop --branches, pick it from working directory
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
33 $ hg branches |
3013
945a0989e41b
packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3000
diff
changeset
|
34 foo 1:6a022cbb61d5 |
265
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
35 $ glog |
3013
945a0989e41b
packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3000
diff
changeset
|
36 @ 1@foo(draft) adda |
265
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
37 |
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
38 Test no-op |
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
39 |
974
5808aad40aca
amend: in tests, do not rely on defaults -- always use explicit -d
Greg Ward <greg@gerg.ca>
parents:
742
diff
changeset
|
40 $ hg amend -d '0 0' |
742
760d01a549a6
amend: use core mechanism for amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
699
diff
changeset
|
41 nothing changed |
760d01a549a6
amend: use core mechanism for amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
699
diff
changeset
|
42 [1] |
265
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
43 $ glog |
3013
945a0989e41b
packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3000
diff
changeset
|
44 @ 1@foo(draft) adda |
265
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
45 |
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
46 |
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
47 Test forcing the message to the same value, no intermediate revision. |
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
48 |
974
5808aad40aca
amend: in tests, do not rely on defaults -- always use explicit -d
Greg Ward <greg@gerg.ca>
parents:
742
diff
changeset
|
49 $ hg amend -d '0 0' -m 'adda' |
742
760d01a549a6
amend: use core mechanism for amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
699
diff
changeset
|
50 nothing changed |
760d01a549a6
amend: use core mechanism for amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
699
diff
changeset
|
51 [1] |
265
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
52 $ glog |
3013
945a0989e41b
packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3000
diff
changeset
|
53 @ 1@foo(draft) adda |
263
de62daaf2054
amend: drop --branches, pick it from working directory
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
54 |
de62daaf2054
amend: drop --branches, pick it from working directory
Patrick Mezard <patrick@mezard.eu>
parents:
diff
changeset
|
55 |
265
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
56 Test collapsing into an existing revision, no intermediate revision. |
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
57 |
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
58 $ echo a >> a |
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
59 $ hg ci -m changea |
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
60 $ echo a > a |
445
52b5e14c63d5
obsolete: enforce pdiff and pstatus alias in the extension
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
444
diff
changeset
|
61 $ hg status |
52b5e14c63d5
obsolete: enforce pdiff and pstatus alias in the extension
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
444
diff
changeset
|
62 M a |
52b5e14c63d5
obsolete: enforce pdiff and pstatus alias in the extension
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
444
diff
changeset
|
63 $ hg pstatus |
52b5e14c63d5
obsolete: enforce pdiff and pstatus alias in the extension
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
444
diff
changeset
|
64 $ hg diff |
742
760d01a549a6
amend: use core mechanism for amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
699
diff
changeset
|
65 diff -r f7a50201fe3a a |
445
52b5e14c63d5
obsolete: enforce pdiff and pstatus alias in the extension
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
444
diff
changeset
|
66 --- a/a Thu Jan 01 00:00:00 1970 +0000 |
52b5e14c63d5
obsolete: enforce pdiff and pstatus alias in the extension
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
444
diff
changeset
|
67 +++ b/a * +0000 (glob) |
52b5e14c63d5
obsolete: enforce pdiff and pstatus alias in the extension
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
444
diff
changeset
|
68 @@ -1,2 +1,1 @@ |
52b5e14c63d5
obsolete: enforce pdiff and pstatus alias in the extension
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
444
diff
changeset
|
69 a |
52b5e14c63d5
obsolete: enforce pdiff and pstatus alias in the extension
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
444
diff
changeset
|
70 -a |
52b5e14c63d5
obsolete: enforce pdiff and pstatus alias in the extension
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
444
diff
changeset
|
71 $ hg pdiff |
265
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
72 $ hg ci -m reseta |
441
d702f0d26c6a
obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
385
diff
changeset
|
73 $ hg debugobsolete |
2578
7795a86ba326
effectflag: activate effect flag on test-amend.t test file
Boris Feld <boris.feld@octobus.net>
parents:
1806
diff
changeset
|
74 07f4944404050f47db2e5c5071e0e84e7a27bba9 6a022cbb61d5ba0f03f98ff2d36319dfea1034ae 0 (*) {'ef1': '*', 'user': 'test'} (glob) |
265
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
75 $ hg phase 2 |
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
76 2: draft |
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
77 $ glog |
3013
945a0989e41b
packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3000
diff
changeset
|
78 @ 3@foo(draft) reseta |
265
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
79 | |
3013
945a0989e41b
packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3000
diff
changeset
|
80 o 2@foo(draft) changea |
265
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
81 | |
3013
945a0989e41b
packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3000
diff
changeset
|
82 o 1@foo(draft) adda |
265
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
83 |
975 | 84 Specify precise commit date with -d |
85 $ hg amend -d '2001-02-03 04:05:06 +0700' | |
86 $ hg parents --template '{rev} {date|date}\n' | |
3013
945a0989e41b
packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3000
diff
changeset
|
87 4 Sat Feb 03 04:05:06 2001 +0700 |
265
24943df310d4
amend: do not traceback on no-ops
Patrick Mezard <patrick@mezard.eu>
parents:
263
diff
changeset
|
88 |
976
bed842762447
amend: add -D/--current-date option, just like mq's qrefresh has
Greg Ward <greg@gerg.ca>
parents:
975
diff
changeset
|
89 Specify "now" as commit date with -D |
bed842762447
amend: add -D/--current-date option, just like mq's qrefresh has
Greg Ward <greg@gerg.ca>
parents:
975
diff
changeset
|
90 $ before=`date +%s` |
bed842762447
amend: add -D/--current-date option, just like mq's qrefresh has
Greg Ward <greg@gerg.ca>
parents:
975
diff
changeset
|
91 $ hg amend -D |
bed842762447
amend: add -D/--current-date option, just like mq's qrefresh has
Greg Ward <greg@gerg.ca>
parents:
975
diff
changeset
|
92 $ commit=`hg parents --template '{date|hgdate} rev{rev}\n'` |
bed842762447
amend: add -D/--current-date option, just like mq's qrefresh has
Greg Ward <greg@gerg.ca>
parents:
975
diff
changeset
|
93 $ after=`date +%s` |
bed842762447
amend: add -D/--current-date option, just like mq's qrefresh has
Greg Ward <greg@gerg.ca>
parents:
975
diff
changeset
|
94 $ (echo $before ; echo $commit; echo $after) | sort -k1 -n -s |
bed842762447
amend: add -D/--current-date option, just like mq's qrefresh has
Greg Ward <greg@gerg.ca>
parents:
975
diff
changeset
|
95 \d+ (re) |
3013
945a0989e41b
packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3000
diff
changeset
|
96 \d+ 0 rev5 (re) |
976
bed842762447
amend: add -D/--current-date option, just like mq's qrefresh has
Greg Ward <greg@gerg.ca>
parents:
975
diff
changeset
|
97 \d+ (re) |
985
6a37044ec0b3
amend: add -U/--current-user option (inspired by mq)
Greg Ward <greg@gerg.ca>
parents:
984
diff
changeset
|
98 |
6a37044ec0b3
amend: add -U/--current-user option (inspired by mq)
Greg Ward <greg@gerg.ca>
parents:
984
diff
changeset
|
99 Specify current user as committer with -U |
6a37044ec0b3
amend: add -U/--current-user option (inspired by mq)
Greg Ward <greg@gerg.ca>
parents:
984
diff
changeset
|
100 $ HGUSER=newbie hg amend -U |
6a37044ec0b3
amend: add -U/--current-user option (inspired by mq)
Greg Ward <greg@gerg.ca>
parents:
984
diff
changeset
|
101 $ hg parents --template '{rev} {author}\n' |
3013
945a0989e41b
packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3000
diff
changeset
|
102 6 newbie |
1140
b7d85cd8ec7b
amend: allow the --logfile argument to work properly
Matt Harbison <matt_harbison@yahoo.com>
parents:
1067
diff
changeset
|
103 |
b7d85cd8ec7b
amend: allow the --logfile argument to work properly
Matt Harbison <matt_harbison@yahoo.com>
parents:
1067
diff
changeset
|
104 Check that --logfile works |
b7d85cd8ec7b
amend: allow the --logfile argument to work properly
Matt Harbison <matt_harbison@yahoo.com>
parents:
1067
diff
changeset
|
105 $ echo "logfile message" > logfile.txt |
b7d85cd8ec7b
amend: allow the --logfile argument to work properly
Matt Harbison <matt_harbison@yahoo.com>
parents:
1067
diff
changeset
|
106 $ hg amend -l logfile.txt |
b7d85cd8ec7b
amend: allow the --logfile argument to work properly
Matt Harbison <matt_harbison@yahoo.com>
parents:
1067
diff
changeset
|
107 $ hg log -r . -T "{desc}\n" |
b7d85cd8ec7b
amend: allow the --logfile argument to work properly
Matt Harbison <matt_harbison@yahoo.com>
parents:
1067
diff
changeset
|
108 logfile message |
1142
9d85fd6e1474
test-amend: add a test for amend with no configured username (issue4211)
Matt Harbison <matt_harbison@yahoo.com>
parents:
1140
diff
changeset
|
109 |
9d85fd6e1474
test-amend: add a test for amend with no configured username (issue4211)
Matt Harbison <matt_harbison@yahoo.com>
parents:
1140
diff
changeset
|
110 # Make sure we don't get reparented to -1 with no username (issue4211) |
9d85fd6e1474
test-amend: add a test for amend with no configured username (issue4211)
Matt Harbison <matt_harbison@yahoo.com>
parents:
1140
diff
changeset
|
111 $ HGUSER= |
9d85fd6e1474
test-amend: add a test for amend with no configured username (issue4211)
Matt Harbison <matt_harbison@yahoo.com>
parents:
1140
diff
changeset
|
112 $ hg amend -e --config ui.username= -m "empty user" |
9d85fd6e1474
test-amend: add a test for amend with no configured username (issue4211)
Matt Harbison <matt_harbison@yahoo.com>
parents:
1140
diff
changeset
|
113 abort: no username supplied |
1673
8e879d59b20e
tests: change quoting pattern to match core's conventions
Laurent Charignon <lcharignon@fb.com>
parents:
1584
diff
changeset
|
114 (use 'hg config --edit' to set your username) |
1142
9d85fd6e1474
test-amend: add a test for amend with no configured username (issue4211)
Matt Harbison <matt_harbison@yahoo.com>
parents:
1140
diff
changeset
|
115 [255] |
9d85fd6e1474
test-amend: add a test for amend with no configured username (issue4211)
Matt Harbison <matt_harbison@yahoo.com>
parents:
1140
diff
changeset
|
116 $ hg sum |
3013
945a0989e41b
packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3000
diff
changeset
|
117 parent: 7:* tip (glob) |
1142
9d85fd6e1474
test-amend: add a test for amend with no configured username (issue4211)
Matt Harbison <matt_harbison@yahoo.com>
parents:
1140
diff
changeset
|
118 logfile message |
9d85fd6e1474
test-amend: add a test for amend with no configured username (issue4211)
Matt Harbison <matt_harbison@yahoo.com>
parents:
1140
diff
changeset
|
119 branch: foo |
9d85fd6e1474
test-amend: add a test for amend with no configured username (issue4211)
Matt Harbison <matt_harbison@yahoo.com>
parents:
1140
diff
changeset
|
120 commit: 1 unknown (clean) |
9d85fd6e1474
test-amend: add a test for amend with no configured username (issue4211)
Matt Harbison <matt_harbison@yahoo.com>
parents:
1140
diff
changeset
|
121 update: (current) |
1453
8ca31deb8db7
merge with stable
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
1452
diff
changeset
|
122 phases: 3 draft |
1296
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
123 |
5079
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
124 setting the user after we have performed the test with no username |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
125 $ HGUSER=test |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
126 |
1296
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
127 Check the help |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
128 $ hg amend -h |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
129 hg amend [OPTION]... [FILE]... |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
130 |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
131 aliases: refresh |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
132 |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
133 combine a changeset with updates and replace it with a new one |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
134 |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
135 Commits a new changeset incorporating both the changes to the given files |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
136 and all the changes from the current parent changeset into the repository. |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
137 |
1584
190e4e526c66
tests: change some double quotes to single quotes
Martin von Zweigbergk <martinvonz@google.com>
parents:
1453
diff
changeset
|
138 See 'hg commit' for details about committing changes. |
1296
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
139 |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
140 If you don't specify -m, the parent's message will be reused. |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
141 |
3296
b834cb64f779
amend: fix a typo in amend help text related to the extract option
Boris Feld <boris.feld@octobus.net>
parents:
3223
diff
changeset
|
142 If --extract is specified, the behavior of 'hg amend' is reversed: Changes |
2730
7fbb7a5d359f
uncommit: expose the feature with a '--extract' to amend
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
2726
diff
changeset
|
143 to selected files in the checked out revision appear again as uncommitted |
7fbb7a5d359f
uncommit: expose the feature with a '--extract' to amend
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
2726
diff
changeset
|
144 changed in the working directory. |
7fbb7a5d359f
uncommit: expose the feature with a '--extract' to amend
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
2726
diff
changeset
|
145 |
1296
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
146 Returns 0 on success, 1 if nothing changed. |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
147 |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
148 options ([+] can be repeated): |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
149 |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
150 -A --addremove mark new/missing files as added/removed before |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
151 committing |
2730
7fbb7a5d359f
uncommit: expose the feature with a '--extract' to amend
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
2726
diff
changeset
|
152 -a --all match all files |
1296
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
153 -e --edit invoke editor on commit messages |
2730
7fbb7a5d359f
uncommit: expose the feature with a '--extract' to amend
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
2726
diff
changeset
|
154 --extract extract changes from the commit to the working copy |
3660
f018656ca3bf
amend: add a new flag `--patch` to `hg amend`
Pulkit Goyal <7895pulkit@gmail.com>
parents:
3520
diff
changeset
|
155 --patch make changes to wdir parent by editing patch |
1296
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
156 --close-branch mark a branch as closed, hiding it from the branch |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
157 list |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
158 -s --secret use the secret phase for committing |
4183
536c67823962
commands: adjust metavariables as appropriate
Anton Shestakov <av6@dwimlabs.net>
parents:
3660
diff
changeset
|
159 -n --note TEXT store a note on amend |
1296
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
160 -I --include PATTERN [+] include names matching the given patterns |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
161 -X --exclude PATTERN [+] exclude names matching the given patterns |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
162 -m --message TEXT use text as commit message |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
163 -l --logfile FILE read commit message from file |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
164 -d --date DATE record the specified date as commit date |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
165 -u --user USER record the specified user as committer |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
166 -D --current-date record the current date as commit date |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
167 -U --current-user record the current user as committer |
1452
1bcbd14cf159
merge back with 3.3 compat branch
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
1451
diff
changeset
|
168 -i --interactive use interactive mode |
1296
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
169 |
23819e1d61fd
evolve: add -i flag to amend command
Laurent Charignon <lcharignon@fb.com>
parents:
1185
diff
changeset
|
170 (some details hidden, use --verbose to show complete help) |
4988
588b3484c131
amend: abort if both --patch and --extract are used
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4183
diff
changeset
|
171 |
588b3484c131
amend: abort if both --patch and --extract are used
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4183
diff
changeset
|
172 Check that we abort if --patch and --extract both are used at once |
588b3484c131
amend: abort if both --patch and --extract are used
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4183
diff
changeset
|
173 $ hg amend --patch --extract |
588b3484c131
amend: abort if both --patch and --extract are used
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4183
diff
changeset
|
174 abort: cannot use both --patch and --extract |
588b3484c131
amend: abort if both --patch and --extract are used
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4183
diff
changeset
|
175 [255] |
5079
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
176 |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
177 $ cd .. |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
178 |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
179 Check the pre-check logic for content-divergence |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
180 $ hg init precheckrepo |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
181 $ cd precheckrepo |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
182 $ echo a > a |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
183 $ hg ci -Am "added a" |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
184 adding a |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
185 $ echo newchanges > a |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
186 $ hg amend |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
187 $ hg up 0 --hidden -q |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
188 updated to hidden changeset 9092f1db7931 |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
189 (hidden revision '9092f1db7931' was rewritten as: aafaf407b00d) |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
190 working directory parent is obsolete! (9092f1db7931) |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
191 |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
192 when rewritting an already rewritten changeset (i.e cset being rewritten will |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
193 be the base of divergence) |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
194 $ hg amend -m "i am gonna create divergence" |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
195 abort: amend of 9092f1db7931 creates content-divergence with aafaf407b00d |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
196 (add --verbose for details or see 'hg help evolution.instability') |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
197 [255] |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
198 $ hg amend -m "i am gonna create divergence" --verbose |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
199 abort: amend of 9092f1db7931 creates content-divergence with aafaf407b00d |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
200 changeset 9092f1db7931 already have a successors as changeset aafaf407b00d |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
201 rewriting changeset 9092f1db7931 would create "content-divergence" |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
202 set experimental.evolution.allowdivergence=True to overwrite this check |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
203 (see 'hg help evolution.instability' for details on content-divergence) |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
204 [255] |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
205 |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
206 when rewritting a cset which has a predecessor with non-obsolete successor |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
207 |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
208 to prepare the repo |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
209 1) create content-divergence |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
210 2) remove divergence by pruning one of the divergent cset |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
211 $ echo edited_a > a |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
212 $ hg ci -m "edited a" |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
213 1 new orphan changesets |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
214 $ hg debugobsolete $(hg id -ir 0 --debug) $(hg id -ir 2 --debug) |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
215 1 new obsolescence markers |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
216 2 new content-divergent changesets |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
217 |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
218 remove divergence by pruning one side of divergenence |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
219 $ hg debugobsolete $(hg id -ir 2 --debug) |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
220 1 new obsolescence markers |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
221 obsoleted 1 changesets |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
222 |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
223 $ hg evolve -l |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
224 $ hg amend -m "i am gonna create divergence" |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
225 abort: amend of f8c05838af90 creates content-divergence with aafaf407b00d, from 9092f1db7931 |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
226 (add --verbose for details or see 'hg help evolution.instability') |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
227 [255] |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
228 $ hg amend -m "i am gonna create divergence" --verbose |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
229 abort: amend of f8c05838af90 creates content-divergence with aafaf407b00d, from 9092f1db7931 |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
230 changeset f8c05838af90 is an evolution of changeset 9092f1db7931 |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
231 changeset 9092f1db7931 already have a successors as changeset aafaf407b00d |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
232 rewriting changeset f8c05838af90 would create "content-divergence" |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
233 set experimental.evolution.allowdivergence=True to overwrite this check |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
234 (see 'hg help evolution.instability' for details on content-divergence) |
1f92a6aa40d6
evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
4988
diff
changeset
|
235 [255] |