Mercurial > hg
annotate tests/test-default-push.t @ 37047:fddcb51b5084
wireproto: define permissions-based routing of HTTPv2 wire protocol
Now that we have a scaffolding for serving version 2 of the HTTP
protocol, let's start implementing it.
A good place to start is URL routing and basic request processing
semantics. We can focus on content types, capabilities detect, etc
later.
Version 2 of the HTTP wire protocol encodes the needed permissions
of the request in the URL path. The reasons for this are documented
in the added documentation. In short, a) it makes it really easy and
fail proof for server administrators to implement path-based
authentication and b) it will enable clients to realize very early in
a server exchange that authentication will be required to complete
the operation. This latter point avoids all kinds of complexity and
problems, like dealing with Expect: 100-continue and clients finding
out later during `hg push` that they need to provide authentication.
This will avoid the current badness where clients send a full bundle,
get an HTTP 403, provide authentication, then retransmit the bundle.
In order to implement command checking, we needed to implement a
protocol handler for the new wire protocol. Our handler is just
small enough to run the code we've implemented.
Tests for the defined functionality have been added.
I very much want to refactor the permissions checking code and define
a better response format. But this can be done later. Nothing is
covered by backwards compatibility at this point.
Differential Revision: https://phab.mercurial-scm.org/D2836
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Mon, 19 Mar 2018 16:43:47 -0700 |
parents | 2a258985ffeb |
children | 1bf1dcbc9950 |
rev | line source |
---|---|
12287
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
1 $ hg init a |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
2 |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
3 $ echo a > a/a |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
4 $ hg --cwd a ci -Ama |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
5 adding a |
2496
6dbb8ae0a0b3
add test for default-push.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
6 |
12287
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
7 $ hg clone a c |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
8 updating to branch default |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
9 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
2496
6dbb8ae0a0b3
add test for default-push.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
10 |
12287
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
11 $ hg clone a b |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
12 updating to branch default |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
13 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
14 |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
15 $ echo b >> b/a |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
16 $ hg --cwd b ci -mb |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
17 |
20558
c4f45ce85351
push: provide a hint when no paths in configured (issue3692)
anuraggoel <anurag.dsps@gmail.com>
parents:
15447
diff
changeset
|
18 Push should provide a hint when both 'default' and 'default-push' not set: |
c4f45ce85351
push: provide a hint when no paths in configured (issue3692)
anuraggoel <anurag.dsps@gmail.com>
parents:
15447
diff
changeset
|
19 $ cd c |
c4f45ce85351
push: provide a hint when no paths in configured (issue3692)
anuraggoel <anurag.dsps@gmail.com>
parents:
15447
diff
changeset
|
20 $ hg push --config paths.default= |
c4f45ce85351
push: provide a hint when no paths in configured (issue3692)
anuraggoel <anurag.dsps@gmail.com>
parents:
15447
diff
changeset
|
21 abort: default repository not configured! |
29965
b3100653bafd
push: update help hint to point to config.paths section
timeless <timeless@mozdev.org>
parents:
29413
diff
changeset
|
22 (see 'hg help config.paths') |
20558
c4f45ce85351
push: provide a hint when no paths in configured (issue3692)
anuraggoel <anurag.dsps@gmail.com>
parents:
15447
diff
changeset
|
23 [255] |
c4f45ce85351
push: provide a hint when no paths in configured (issue3692)
anuraggoel <anurag.dsps@gmail.com>
parents:
15447
diff
changeset
|
24 |
c4f45ce85351
push: provide a hint when no paths in configured (issue3692)
anuraggoel <anurag.dsps@gmail.com>
parents:
15447
diff
changeset
|
25 $ cd .. |
c4f45ce85351
push: provide a hint when no paths in configured (issue3692)
anuraggoel <anurag.dsps@gmail.com>
parents:
15447
diff
changeset
|
26 |
12287
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
27 Push should push to 'default' when 'default-push' not set: |
2496
6dbb8ae0a0b3
add test for default-push.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
28 |
12287
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
29 $ hg --cwd b push |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
29965
diff
changeset
|
30 pushing to $TESTTMP/a |
12287
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
31 searching for changes |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
32 adding changesets |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
33 adding manifests |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
34 adding file changes |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
35 added 1 changesets with 1 changes to 1 files |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
36 |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
37 Push should push to 'default-push' when set: |
2496
6dbb8ae0a0b3
add test for default-push.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
38 |
22837
2be7d5ebd4d0
config: use the same hgrc for a cloned repo as for an uninitted repo
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
20558
diff
changeset
|
39 $ echo '[paths]' >> b/.hg/hgrc |
12287
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
40 $ echo 'default-push = ../c' >> b/.hg/hgrc |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
41 $ hg --cwd b push |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
29965
diff
changeset
|
42 pushing to $TESTTMP/c |
12287
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
43 searching for changes |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
44 adding changesets |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
45 adding manifests |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
46 adding file changes |
d8707306d667
tests: unify test-default-push
Adrian Buehlmann <adrian@cadifra.com>
parents:
2496
diff
changeset
|
47 added 1 changesets with 1 changes to 1 files |
26189
663fbc336e22
ui: change default path fallback mechanism (issue4796)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26057
diff
changeset
|
48 |
27555
ca8ada499529
push: restore old behavior of default-push (issue5000)
Yuya Nishihara <yuya@tcha.org>
parents:
26820
diff
changeset
|
49 But push should push to 'default' if explicitly specified (issue5000): |
ca8ada499529
push: restore old behavior of default-push (issue5000)
Yuya Nishihara <yuya@tcha.org>
parents:
26820
diff
changeset
|
50 |
ca8ada499529
push: restore old behavior of default-push (issue5000)
Yuya Nishihara <yuya@tcha.org>
parents:
26820
diff
changeset
|
51 $ hg --cwd b push default |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
29965
diff
changeset
|
52 pushing to $TESTTMP/a |
27555
ca8ada499529
push: restore old behavior of default-push (issue5000)
Yuya Nishihara <yuya@tcha.org>
parents:
26820
diff
changeset
|
53 searching for changes |
ca8ada499529
push: restore old behavior of default-push (issue5000)
Yuya Nishihara <yuya@tcha.org>
parents:
26820
diff
changeset
|
54 no changes found |
ca8ada499529
push: restore old behavior of default-push (issue5000)
Yuya Nishihara <yuya@tcha.org>
parents:
26820
diff
changeset
|
55 [1] |
ca8ada499529
push: restore old behavior of default-push (issue5000)
Yuya Nishihara <yuya@tcha.org>
parents:
26820
diff
changeset
|
56 |
26820
71d5238f92e9
ui: support paths.default-push without paths.default set (issue4914)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26189
diff
changeset
|
57 Push should push to 'default-push' when 'default' is not set |
71d5238f92e9
ui: support paths.default-push without paths.default set (issue4914)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26189
diff
changeset
|
58 |
71d5238f92e9
ui: support paths.default-push without paths.default set (issue4914)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26189
diff
changeset
|
59 $ hg -q clone a push-default-only |
71d5238f92e9
ui: support paths.default-push without paths.default set (issue4914)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26189
diff
changeset
|
60 $ cd push-default-only |
71d5238f92e9
ui: support paths.default-push without paths.default set (issue4914)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26189
diff
changeset
|
61 $ rm .hg/hgrc |
71d5238f92e9
ui: support paths.default-push without paths.default set (issue4914)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26189
diff
changeset
|
62 |
71d5238f92e9
ui: support paths.default-push without paths.default set (issue4914)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26189
diff
changeset
|
63 $ touch foo |
71d5238f92e9
ui: support paths.default-push without paths.default set (issue4914)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26189
diff
changeset
|
64 $ hg -q commit -A -m 'add foo' |
71d5238f92e9
ui: support paths.default-push without paths.default set (issue4914)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26189
diff
changeset
|
65 $ hg --config paths.default-push=../a push |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
29965
diff
changeset
|
66 pushing to $TESTTMP/a |
26820
71d5238f92e9
ui: support paths.default-push without paths.default set (issue4914)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26189
diff
changeset
|
67 searching for changes |
71d5238f92e9
ui: support paths.default-push without paths.default set (issue4914)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26189
diff
changeset
|
68 adding changesets |
71d5238f92e9
ui: support paths.default-push without paths.default set (issue4914)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26189
diff
changeset
|
69 adding manifests |
71d5238f92e9
ui: support paths.default-push without paths.default set (issue4914)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26189
diff
changeset
|
70 adding file changes |
71d5238f92e9
ui: support paths.default-push without paths.default set (issue4914)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26189
diff
changeset
|
71 added 1 changesets with 1 changes to 1 files |
71d5238f92e9
ui: support paths.default-push without paths.default set (issue4914)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26189
diff
changeset
|
72 |
71d5238f92e9
ui: support paths.default-push without paths.default set (issue4914)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26189
diff
changeset
|
73 $ cd .. |
71d5238f92e9
ui: support paths.default-push without paths.default set (issue4914)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26189
diff
changeset
|
74 |
26189
663fbc336e22
ui: change default path fallback mechanism (issue4796)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26057
diff
changeset
|
75 Pushing to a path that isn't defined should not fall back to default |
663fbc336e22
ui: change default path fallback mechanism (issue4796)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26057
diff
changeset
|
76 |
663fbc336e22
ui: change default path fallback mechanism (issue4796)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26057
diff
changeset
|
77 $ hg --cwd b push doesnotexist |
663fbc336e22
ui: change default path fallback mechanism (issue4796)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26057
diff
changeset
|
78 abort: repository doesnotexist does not exist! |
663fbc336e22
ui: change default path fallback mechanism (issue4796)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26057
diff
changeset
|
79 [255] |
27266
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
80 |
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
81 :pushurl is used when defined |
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
82 |
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
83 $ hg -q clone a pushurlsource |
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
84 $ hg -q clone a pushurldest |
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
85 $ cd pushurlsource |
27437
52ae742c8035
tests: make `pwd` URL compatible on Windows in test-default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
27266
diff
changeset
|
86 |
52ae742c8035
tests: make `pwd` URL compatible on Windows in test-default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
27266
diff
changeset
|
87 Windows needs a leading slash to make a URL that passes all of the checks |
52ae742c8035
tests: make `pwd` URL compatible on Windows in test-default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
27266
diff
changeset
|
88 $ WD=`pwd` |
52ae742c8035
tests: make `pwd` URL compatible on Windows in test-default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
27266
diff
changeset
|
89 #if windows |
52ae742c8035
tests: make `pwd` URL compatible on Windows in test-default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
27266
diff
changeset
|
90 $ WD="/$WD" |
52ae742c8035
tests: make `pwd` URL compatible on Windows in test-default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
27266
diff
changeset
|
91 #endif |
27266
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
92 $ cat > .hg/hgrc << EOF |
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
93 > [paths] |
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
94 > default = https://example.com/not/relevant |
27437
52ae742c8035
tests: make `pwd` URL compatible on Windows in test-default-push
Matt Harbison <matt_harbison@yahoo.com>
parents:
27266
diff
changeset
|
95 > default:pushurl = file://$WD/../pushurldest |
27266
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
96 > EOF |
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
97 |
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
98 $ touch pushurl |
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
99 $ hg -q commit -A -m 'add pushurl' |
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
100 $ hg push |
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
101 pushing to file:/*/$TESTTMP/pushurlsource/../pushurldest (glob) |
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
102 searching for changes |
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
103 adding changesets |
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
104 adding manifests |
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
105 adding file changes |
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
106 added 1 changesets with 1 changes to 1 files |
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
107 |
29413
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
108 :pushrev is used when no -r is passed |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
109 |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
110 $ cat >> .hg/hgrc << EOF |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
111 > default:pushrev = . |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
112 > EOF |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
113 $ hg -q up -r 0 |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
114 $ echo head1 > foo |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
115 $ hg -q commit -A -m head1 |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
116 $ hg -q up -r 0 |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
117 $ echo head2 > foo |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
118 $ hg -q commit -A -m head2 |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
119 $ hg push -f |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
120 pushing to file:/*/$TESTTMP/pushurlsource/../pushurldest (glob) |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
121 searching for changes |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
122 adding changesets |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
123 adding manifests |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
124 adding file changes |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
125 added 1 changesets with 1 changes to 1 files (+1 heads) |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
126 |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
127 $ hg --config 'paths.default:pushrev=draft()' push -f |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
128 pushing to file:/*/$TESTTMP/pushurlsource/../pushurldest (glob) |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
129 searching for changes |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
130 adding changesets |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
131 adding manifests |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
132 adding file changes |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
133 added 1 changesets with 1 changes to 1 files (+1 heads) |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
134 |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
135 Invalid :pushrev raises appropriately |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
136 |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
137 $ hg --config 'paths.default:pushrev=notdefined()' push |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
138 pushing to file:/*/$TESTTMP/pushurlsource/../pushurldest (glob) |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
139 hg: parse error: unknown identifier: notdefined |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
140 [255] |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
141 |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
142 $ hg --config 'paths.default:pushrev=(' push |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
143 pushing to file:/*/$TESTTMP/pushurlsource/../pushurldest (glob) |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
144 hg: parse error at 1: not a prefix: end |
36685
2a258985ffeb
revsetlang: add a hint for more useful parse errors
Ryan McElroy <rmcelroy@fb.com>
parents:
35393
diff
changeset
|
145 (( |
2a258985ffeb
revsetlang: add a hint for more useful parse errors
Ryan McElroy <rmcelroy@fb.com>
parents:
35393
diff
changeset
|
146 ^ here) |
29413
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
147 [255] |
31d3ab7985b8
ui: path option to declare which revisions to push by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27570
diff
changeset
|
148 |
27266
4dccc37b87bd
ui: support declaring path push urls as sub-options
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26820
diff
changeset
|
149 $ cd .. |