Mercurial > hg
annotate tests/test-pathconflicts-update.t @ 37048:fc5e261915b9
wireproto: require POST for all HTTPv2 requests
Wire protocol version 1 transfers argument data via request
headers by default. This has historically caused problems because
servers institute limits on the length of individual HTTP headers
as well as the total size of all request headers. Mercurial servers
can advertise the maximum length of an individual header. But
there's no guarantee any intermediate HTTP agents will accept
headers up to that length.
In the existing wire protocol, server operators typically also
key off the HTTP request method to implement authentication.
For example, GET requests translate to read-only requests and
can be allowed. But read-write commands must use POST and require
authentication. This has typically worked because the only wire
protocol commands that use POST modify the repo (e.g. the
"unbundle" command).
There is an experimental feature to enable clients to transmit
argument data via POST request bodies. This is technically a
better and more robust solution. But we can't enable it by default
because of servers assuming POST means write access.
In version 2 of the wire protocol, the permissions of a request
are encoded in the URL. And with it being a new protocol in a new
URL space, we're not constrained by backwards compatibility
requirements.
This commit adopts the technically superior mechanism of using
HTTP request bodies to send argument data by requiring POST for
all commands. Strictly speaking, it may be possible to send
request bodies on GET requests. But my experience is that not all
HTTP stacks support this. POST pretty much always works. Using POST
for read-only operations does sacrifice some RESTful design
purity. But this API cares about practicality, not about being
in Roy T. Fielding's REST ivory tower.
There's a chance we may relax this restriction in the future. But
for now, I want to see how far we can get with a POST only API.
Differential Revision: https://phab.mercurial-scm.org/D2837
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Tue, 13 Mar 2018 11:57:43 -0700 |
parents | 2a774cae3a03 |
children | 527ce85c2e60 |
rev | line source |
---|---|
34942
2a774cae3a03
merge: disable path conflict checking by default (issue5716)
Siddharth Agarwal <sid0@fb.com>
parents:
34691
diff
changeset
|
1 Path conflict checking is currently disabled by default because of issue5716. |
2a774cae3a03
merge: disable path conflict checking by default (issue5716)
Siddharth Agarwal <sid0@fb.com>
parents:
34691
diff
changeset
|
2 Turn it on for this test. |
2a774cae3a03
merge: disable path conflict checking by default (issue5716)
Siddharth Agarwal <sid0@fb.com>
parents:
34691
diff
changeset
|
3 |
2a774cae3a03
merge: disable path conflict checking by default (issue5716)
Siddharth Agarwal <sid0@fb.com>
parents:
34691
diff
changeset
|
4 $ cat >> $HGRCPATH << EOF |
2a774cae3a03
merge: disable path conflict checking by default (issue5716)
Siddharth Agarwal <sid0@fb.com>
parents:
34691
diff
changeset
|
5 > [experimental] |
2a774cae3a03
merge: disable path conflict checking by default (issue5716)
Siddharth Agarwal <sid0@fb.com>
parents:
34691
diff
changeset
|
6 > merge.checkpathconflicts=True |
2a774cae3a03
merge: disable path conflict checking by default (issue5716)
Siddharth Agarwal <sid0@fb.com>
parents:
34691
diff
changeset
|
7 > EOF |
2a774cae3a03
merge: disable path conflict checking by default (issue5716)
Siddharth Agarwal <sid0@fb.com>
parents:
34691
diff
changeset
|
8 |
34557
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
9 $ hg init repo |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
10 $ cd repo |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
11 $ echo base > base |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
12 $ hg add base |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
13 $ hg commit -m "base" |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
14 $ hg bookmark -i base |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
15 $ mkdir a |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
16 $ echo 1 > a/b |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
17 $ hg add a/b |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
18 $ hg commit -m "file" |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
19 $ hg bookmark -i file |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
20 $ echo 2 > a/b |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
21 $ hg commit -m "file2" |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
22 $ hg bookmark -i file2 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
23 $ hg up 0 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
24 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
25 $ mkdir a |
34691
857fc3313f7b
test-conflicts: conditionalize for no-symlink platforms
Matt Harbison <matt_harbison@yahoo.com>
parents:
34572
diff
changeset
|
26 #if symlink |
34557
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
27 $ ln -s c a/b |
34691
857fc3313f7b
test-conflicts: conditionalize for no-symlink platforms
Matt Harbison <matt_harbison@yahoo.com>
parents:
34572
diff
changeset
|
28 #else |
857fc3313f7b
test-conflicts: conditionalize for no-symlink platforms
Matt Harbison <matt_harbison@yahoo.com>
parents:
34572
diff
changeset
|
29 $ touch a/b |
857fc3313f7b
test-conflicts: conditionalize for no-symlink platforms
Matt Harbison <matt_harbison@yahoo.com>
parents:
34572
diff
changeset
|
30 #endif |
34557
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
31 $ hg add a/b |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
32 $ hg commit -m "link" |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
33 created new head |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
34 $ hg bookmark -i link |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
35 $ hg up 0 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
36 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
37 $ mkdir -p a/b/c |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
38 $ echo 2 > a/b/c/d |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
39 $ hg add a/b/c/d |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
40 $ hg commit -m "dir" |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
41 created new head |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
42 $ hg bookmark -i dir |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
43 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
44 Update - local file conflicts with remote directory: |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
45 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
46 $ hg up -q 0 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
47 $ mkdir a |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
48 $ echo 9 > a/b |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
49 $ hg up dir |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
50 a/b: untracked file conflicts with directory |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
51 abort: untracked files in working directory differ from files in requested revision |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
52 [255] |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
53 $ hg up dir --config merge.checkunknown=warn |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
54 a/b: replacing untracked file |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
55 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
56 (activating bookmark dir) |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
57 $ cat a/b.orig |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
58 9 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
59 $ rm a/b.orig |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
60 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
61 Update - local symlink conflicts with remote directory: |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
62 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
63 $ hg up -q 0 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
64 $ mkdir a |
34691
857fc3313f7b
test-conflicts: conditionalize for no-symlink platforms
Matt Harbison <matt_harbison@yahoo.com>
parents:
34572
diff
changeset
|
65 #if symlink |
34557
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
66 $ ln -s x a/b |
34691
857fc3313f7b
test-conflicts: conditionalize for no-symlink platforms
Matt Harbison <matt_harbison@yahoo.com>
parents:
34572
diff
changeset
|
67 #else |
857fc3313f7b
test-conflicts: conditionalize for no-symlink platforms
Matt Harbison <matt_harbison@yahoo.com>
parents:
34572
diff
changeset
|
68 $ touch a/b |
857fc3313f7b
test-conflicts: conditionalize for no-symlink platforms
Matt Harbison <matt_harbison@yahoo.com>
parents:
34572
diff
changeset
|
69 #endif |
34557
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
70 $ hg up dir |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
71 a/b: untracked file conflicts with directory |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
72 abort: untracked files in working directory differ from files in requested revision |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
73 [255] |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
74 $ hg up dir --config merge.checkunknown=warn |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
75 a/b: replacing untracked file |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
76 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
77 (activating bookmark dir) |
34691
857fc3313f7b
test-conflicts: conditionalize for no-symlink platforms
Matt Harbison <matt_harbison@yahoo.com>
parents:
34572
diff
changeset
|
78 #if symlink |
34572
d6d10771950c
tests: use readlink.py instead of readlink
Augie Fackler <augie@google.com>
parents:
34557
diff
changeset
|
79 $ readlink.py a/b.orig |
d6d10771950c
tests: use readlink.py instead of readlink
Augie Fackler <augie@google.com>
parents:
34557
diff
changeset
|
80 a/b.orig -> x |
34691
857fc3313f7b
test-conflicts: conditionalize for no-symlink platforms
Matt Harbison <matt_harbison@yahoo.com>
parents:
34572
diff
changeset
|
81 #endif |
34557
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
82 $ rm a/b.orig |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
83 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
84 Update - local directory conflicts with remote file |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
85 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
86 $ hg up -q 0 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
87 $ mkdir -p a/b/c |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
88 $ echo 9 > a/b/c/d |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
89 $ hg up file |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
90 a/b: untracked directory conflicts with file |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
91 abort: untracked files in working directory differ from files in requested revision |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
92 [255] |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
93 $ hg up file --config merge.checkunknown=warn |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
94 a/b: replacing untracked files in directory |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
95 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
96 (activating bookmark file) |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
97 $ cat a/b |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
98 1 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
99 $ test -d a/b.orig |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
100 $ rm -rf a/b.orig |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
101 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
102 Update - local directory conflicts with remote symlink |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
103 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
104 $ hg up -q 0 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
105 $ mkdir -p a/b/c |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
106 $ echo 9 > a/b/c/d |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
107 $ hg up link |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
108 a/b: untracked directory conflicts with file |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
109 abort: untracked files in working directory differ from files in requested revision |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
110 [255] |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
111 $ hg up link --config merge.checkunknown=warn |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
112 a/b: replacing untracked files in directory |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
113 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
114 (activating bookmark link) |
34691
857fc3313f7b
test-conflicts: conditionalize for no-symlink platforms
Matt Harbison <matt_harbison@yahoo.com>
parents:
34572
diff
changeset
|
115 #if symlink |
34572
d6d10771950c
tests: use readlink.py instead of readlink
Augie Fackler <augie@google.com>
parents:
34557
diff
changeset
|
116 $ readlink.py a/b |
d6d10771950c
tests: use readlink.py instead of readlink
Augie Fackler <augie@google.com>
parents:
34557
diff
changeset
|
117 a/b -> c |
34691
857fc3313f7b
test-conflicts: conditionalize for no-symlink platforms
Matt Harbison <matt_harbison@yahoo.com>
parents:
34572
diff
changeset
|
118 #endif |
34557
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
119 $ test -d a/b.orig |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
120 $ rm -rf a/b.orig |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
121 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
122 Update - local renamed file conflicts with remote directory |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
123 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
124 $ hg up -q 0 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
125 $ hg mv base a |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
126 $ hg status -C |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
127 A a |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
128 base |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
129 R base |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
130 $ hg up --check dir |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
131 abort: uncommitted changes |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
132 [255] |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
133 $ hg up dir |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
134 a: path conflict - a file or link has the same name as a directory |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
135 the local file has been renamed to a~d20a80d4def3 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
136 resolve manually then use 'hg resolve --mark a' |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
137 1 files updated, 0 files merged, 0 files removed, 1 files unresolved |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
138 use 'hg resolve' to retry unresolved file merges |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
139 (activating bookmark dir) |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
140 [1] |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
141 $ hg status -C |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
142 A a~d20a80d4def3 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
143 base |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
144 R base |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
145 $ hg resolve --list |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
146 P a |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
147 $ hg up --clean -q 0 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
148 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
149 Update clean - local directory conflicts with changed remote file |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
150 |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
151 $ hg up -q file |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
152 $ rm a/b |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
153 $ mkdir a/b |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
154 $ echo 9 > a/b/c |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
155 $ hg up file2 --check --config merge.checkunknown=warn |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
156 abort: uncommitted changes |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
157 [255] |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
158 $ hg up file2 --clean |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
159 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
3b9428f4403d
tests: add test for path conflicts during update
Mark Thomas <mbthomas@fb.com>
parents:
diff
changeset
|
160 (activating bookmark file2) |