Mercurial > hg
annotate tests/test-copy.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 | 4d2b9b304ad0 |
children | aa23e02f9415 |
rev | line source |
---|---|
16856
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
1 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
2 $ mkdir part1 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
3 $ cd part1 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
4 |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
5 $ hg init |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
6 $ echo a > a |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
7 $ hg add a |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11805
diff
changeset
|
8 $ hg commit -m "1" |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
9 $ hg status |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
10 $ hg copy a b |
13962
8b252e826c68
add: introduce a warning message for non-portable filenames (issue2756) (BC)
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
11 $ hg --config ui.portablefilenames=abort copy a con.xml |
8b252e826c68
add: introduce a warning message for non-portable filenames (issue2756) (BC)
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
12 abort: filename contains 'con', which is reserved on Windows: 'con.xml' |
8b252e826c68
add: introduce a warning message for non-portable filenames (issue2756) (BC)
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
13 [255] |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
14 $ hg status |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
15 A b |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
16 $ hg sum |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11805
diff
changeset
|
17 parent: 0:c19d34741b0a tip |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
18 1 |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
19 branch: default |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
20 commit: 1 copied |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
21 update: (current) |
25382
6084926366b9
summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents:
25111
diff
changeset
|
22 phases: 1 draft |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11805
diff
changeset
|
23 $ hg --debug commit -m "2" |
23749
a387b0390082
localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents:
23285
diff
changeset
|
24 committing files: |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
25 b |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
26 b: copy a:b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 |
23749
a387b0390082
localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents:
23285
diff
changeset
|
27 committing manifest |
a387b0390082
localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents:
23285
diff
changeset
|
28 committing changelog |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11805
diff
changeset
|
29 committed changeset 1:93580a2c28a50a56f63526fb305067e6fbf739c4 |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
30 |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
31 we should see two history entries |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
32 |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
33 $ hg history -v |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11805
diff
changeset
|
34 changeset: 1:93580a2c28a5 |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
35 tag: tip |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
36 user: test |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11805
diff
changeset
|
37 date: Thu Jan 01 00:00:00 1970 +0000 |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
38 files: b |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
39 description: |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
40 2 |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
41 |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
42 |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11805
diff
changeset
|
43 changeset: 0:c19d34741b0a |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
44 user: test |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11805
diff
changeset
|
45 date: Thu Jan 01 00:00:00 1970 +0000 |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
46 files: a |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
47 description: |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
48 1 |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
49 |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
50 |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
51 |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
52 we should see one log entry for a |
363 | 53 |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
54 $ hg log a |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11805
diff
changeset
|
55 changeset: 0:c19d34741b0a |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
56 user: test |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11805
diff
changeset
|
57 date: Thu Jan 01 00:00:00 1970 +0000 |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
58 summary: 1 |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
59 |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
60 |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
61 this should show a revision linked to changeset 0 |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
62 |
14182
ec5886db9dc6
tests: fix deprecated use of hg debugdata/debugindex
Sune Foldager <cryo@cyanite.org>
parents:
13962
diff
changeset
|
63 $ hg debugindex a |
17132
b87acfda5268
tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
64 rev offset length ..... linkrev nodeid p1 p2 (re) |
b87acfda5268
tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
65 0 0 3 ..... 0 b789fdd96dc2 000000000000 000000000000 (re) |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
66 |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
67 we should see one log entry for b |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
68 |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
69 $ hg log b |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11805
diff
changeset
|
70 changeset: 1:93580a2c28a5 |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
71 tag: tip |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
72 user: test |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11805
diff
changeset
|
73 date: Thu Jan 01 00:00:00 1970 +0000 |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
74 summary: 2 |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
75 |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
76 |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
77 this should show a revision linked to changeset 1 |
1043 | 78 |
14182
ec5886db9dc6
tests: fix deprecated use of hg debugdata/debugindex
Sune Foldager <cryo@cyanite.org>
parents:
13962
diff
changeset
|
79 $ hg debugindex b |
17132
b87acfda5268
tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
80 rev offset length ..... linkrev nodeid p1 p2 (re) |
b87acfda5268
tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
81 0 0 65 ..... 1 37d9b5d994ea 000000000000 000000000000 (re) |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
82 |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
83 this should show the rename information in the metadata |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
84 |
14182
ec5886db9dc6
tests: fix deprecated use of hg debugdata/debugindex
Sune Foldager <cryo@cyanite.org>
parents:
13962
diff
changeset
|
85 $ hg debugdata b 0 | head -3 | tail -2 |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
86 copy: a |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
87 copyrev: b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 |
1043 | 88 |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
25382
diff
changeset
|
89 $ md5sum.py .hg/store/data/b.i |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
90 4999f120a3b88713bbefddd195cf5133 .hg/store/data/b.i |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
91 $ hg cat b > bsum |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
25382
diff
changeset
|
92 $ md5sum.py bsum |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
93 60b725f10c9c85c70d97880dfe8191b3 bsum |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
94 $ hg cat a > asum |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
25382
diff
changeset
|
95 $ md5sum.py asum |
11805
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
96 60b725f10c9c85c70d97880dfe8191b3 asum |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
97 $ hg verify |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
98 checking changesets |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
99 checking manifests |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
100 crosschecking files in changesets and manifests |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
101 checking files |
8ef250726cf0
tests: unify test-copy
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents:
11331
diff
changeset
|
102 2 files, 2 changesets, 2 total revisions |
16856
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
103 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
104 $ cd .. |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
105 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
106 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
107 $ mkdir part2 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
108 $ cd part2 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
109 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
110 $ hg init |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
111 $ echo foo > foo |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
112 should fail - foo is not managed |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
113 $ hg mv foo bar |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
114 foo: not copying - file is not managed |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
115 abort: no files to copy |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
116 [255] |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
117 $ hg st -A |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
118 ? foo |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
119 $ hg add foo |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
120 dry-run; print a warning that this is not a real copy; foo is added |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
121 $ hg mv --dry-run foo bar |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
122 foo has not been committed yet, so no copy data will be stored for bar. |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
123 $ hg st -A |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
124 A foo |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
125 should print a warning that this is not a real copy; bar is added |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
126 $ hg mv foo bar |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
127 foo has not been committed yet, so no copy data will be stored for bar. |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
128 $ hg st -A |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
129 A bar |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
130 should print a warning that this is not a real copy; foo is added |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
131 $ hg cp bar foo |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
132 bar has not been committed yet, so no copy data will be stored for foo. |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
133 $ hg rm -f bar |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
134 $ rm bar |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
135 $ hg st -A |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
136 A foo |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
137 $ hg commit -m1 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
138 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
139 moving a missing file |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
140 $ rm foo |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
141 $ hg mv foo foo3 |
24364
135b23868f45
commands: replace "working copy" with "working directory" in help/messages
Yuya Nishihara <yuya@tcha.org>
parents:
23958
diff
changeset
|
142 foo: deleted in working directory |
16856
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
143 foo3 does not exist! |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
144 $ hg up -qC . |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
145 |
17492 | 146 copy --after to a nonexistent target filename |
16856
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
147 $ hg cp -A foo dummy |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
148 foo: not recording copy - dummy does not exist |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
149 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
150 dry-run; should show that foo is clean |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
151 $ hg copy --dry-run foo bar |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
152 $ hg st -A |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
153 C foo |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
154 should show copy |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
155 $ hg copy foo bar |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
156 $ hg st -C |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
157 A bar |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
158 foo |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
159 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
160 shouldn't show copy |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
161 $ hg commit -m2 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
162 $ hg st -C |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
163 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
164 should match |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
165 $ hg debugindex foo |
17132
b87acfda5268
tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
166 rev offset length ..... linkrev nodeid p1 p2 (re) |
b87acfda5268
tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
167 0 0 5 ..... 0 2ed2a3912a0b 000000000000 000000000000 (re) |
16856
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
168 $ hg debugrename bar |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
169 bar renamed from foo:2ed2a3912a0b24502043eae84ee4b279c18b90dd |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
170 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
171 $ echo bleah > foo |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
172 $ echo quux > bar |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
173 $ hg commit -m3 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
174 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
175 should not be renamed |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
176 $ hg debugrename bar |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
177 bar not renamed |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
178 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
179 $ hg copy -f foo bar |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
180 should show copy |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
181 $ hg st -C |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
182 M bar |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
183 foo |
23958
df463ca0adef
largefiles: revert to lfilesrepo.status() being an unfiltered method
Matt Harbison <matt_harbison@yahoo.com>
parents:
23749
diff
changeset
|
184 |
df463ca0adef
largefiles: revert to lfilesrepo.status() being an unfiltered method
Matt Harbison <matt_harbison@yahoo.com>
parents:
23749
diff
changeset
|
185 XXX: filtering lfilesrepo.status() in 3.3-rc causes the copy source to not be |
df463ca0adef
largefiles: revert to lfilesrepo.status() being an unfiltered method
Matt Harbison <matt_harbison@yahoo.com>
parents:
23749
diff
changeset
|
186 displayed. |
df463ca0adef
largefiles: revert to lfilesrepo.status() being an unfiltered method
Matt Harbison <matt_harbison@yahoo.com>
parents:
23749
diff
changeset
|
187 $ hg st -C --config extensions.largefiles= |
df463ca0adef
largefiles: revert to lfilesrepo.status() being an unfiltered method
Matt Harbison <matt_harbison@yahoo.com>
parents:
23749
diff
changeset
|
188 M bar |
df463ca0adef
largefiles: revert to lfilesrepo.status() being an unfiltered method
Matt Harbison <matt_harbison@yahoo.com>
parents:
23749
diff
changeset
|
189 foo |
df463ca0adef
largefiles: revert to lfilesrepo.status() being an unfiltered method
Matt Harbison <matt_harbison@yahoo.com>
parents:
23749
diff
changeset
|
190 |
16856
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
191 $ hg commit -m3 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
192 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
193 should show no parents for tip |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
194 $ hg debugindex bar |
17132
b87acfda5268
tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
195 rev offset length ..... linkrev nodeid p1 p2 (re) |
b87acfda5268
tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
196 0 0 69 ..... 1 7711d36246cc 000000000000 000000000000 (re) |
b87acfda5268
tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
197 1 69 6 ..... 2 bdf70a2b8d03 7711d36246cc 000000000000 (re) |
23285
6cc1f388ac80
revlog: store fulltext when compressed delta is bigger than it
Siddharth Agarwal <sid0@fb.com>
parents:
17492
diff
changeset
|
198 2 75 71 ..... 3 b2558327ea8d 000000000000 000000000000 (re) |
16856
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
199 should match |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
200 $ hg debugindex foo |
17132
b87acfda5268
tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
201 rev offset length ..... linkrev nodeid p1 p2 (re) |
b87acfda5268
tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
202 0 0 5 ..... 0 2ed2a3912a0b 000000000000 000000000000 (re) |
b87acfda5268
tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents:
16913
diff
changeset
|
203 1 5 7 ..... 2 dd12c926cf16 2ed2a3912a0b 000000000000 (re) |
16856
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
204 $ hg debugrename bar |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
205 bar renamed from foo:dd12c926cf165e3eb4cf87b084955cb617221c17 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
206 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
207 should show no copies |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
208 $ hg st -C |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
209 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
210 copy --after on an added file |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
211 $ cp bar baz |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
212 $ hg add baz |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
213 $ hg cp -A bar baz |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
214 $ hg st -C |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
215 A baz |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
216 bar |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
217 |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
218 foo was clean: |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
219 $ hg st -AC foo |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
220 C foo |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
221 but it's considered modified after a copy --after --force |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
222 $ hg copy -Af bar foo |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
223 $ hg st -AC foo |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
224 M foo |
241a32942c7a
tests: roll test-copy2.t into test-copy.t
Adrian Buehlmann <adrian@cadifra.com>
parents:
16350
diff
changeset
|
225 bar |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
16856
diff
changeset
|
226 |
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
16856
diff
changeset
|
227 $ cd .. |