50 > EOF |
50 > EOF |
51 $ cd $TESTTMP |
51 $ cd $TESTTMP |
52 |
52 |
53 repo not found error |
53 repo not found error |
54 |
54 |
55 $ hg clone -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" ssh://user@dummy/nonexistent local |
55 $ hg clone ssh://user@dummy/nonexistent local |
56 remote: abort: repository nonexistent not found |
56 remote: abort: repository nonexistent not found |
57 abort: no suitable response from remote hg |
57 abort: no suitable response from remote hg |
58 [255] |
58 [255] |
59 |
59 |
60 non-existent absolute path |
60 non-existent absolute path |
61 |
61 |
62 #if no-msys |
62 #if no-msys |
63 $ hg clone -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" ssh://user@dummy//`pwd`/nonexistent local |
63 $ hg clone ssh://user@dummy//`pwd`/nonexistent local |
64 remote: abort: repository /$TESTTMP/nonexistent not found |
64 remote: abort: repository /$TESTTMP/nonexistent not found |
65 abort: no suitable response from remote hg |
65 abort: no suitable response from remote hg |
66 [255] |
66 [255] |
67 #endif |
67 #endif |
68 |
68 |
69 clone remote via stream |
69 clone remote via stream |
70 |
70 |
71 #if no-reposimplestore |
71 #if no-reposimplestore |
72 |
72 |
73 $ hg clone -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" --stream ssh://user@dummy/remote local-stream |
73 $ hg clone --stream ssh://user@dummy/remote local-stream |
74 streaming all changes |
74 streaming all changes |
75 4 files to transfer, 602 bytes of data (no-zstd !) |
75 4 files to transfer, 602 bytes of data (no-zstd !) |
76 transferred 602 bytes in * seconds (*) (glob) (no-zstd !) |
76 transferred 602 bytes in * seconds (*) (glob) (no-zstd !) |
77 4 files to transfer, 621 bytes of data (zstd !) |
77 4 files to transfer, 621 bytes of data (zstd !) |
78 transferred 621 bytes in * seconds (* */sec) (glob) (zstd !) |
78 transferred 621 bytes in * seconds (* */sec) (glob) (zstd !) |
92 $ cd $TESTTMP |
92 $ cd $TESTTMP |
93 |
93 |
94 clone bookmarks via stream |
94 clone bookmarks via stream |
95 |
95 |
96 $ hg -R local-stream book mybook |
96 $ hg -R local-stream book mybook |
97 $ hg clone -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" --stream ssh://user@dummy/local-stream stream2 |
97 $ hg clone --stream ssh://user@dummy/local-stream stream2 |
98 streaming all changes |
98 streaming all changes |
99 4 files to transfer, 602 bytes of data (no-zstd !) |
99 4 files to transfer, 602 bytes of data (no-zstd !) |
100 transferred 602 bytes in * seconds (*) (glob) (no-zstd !) |
100 transferred 602 bytes in * seconds (*) (glob) (no-zstd !) |
101 4 files to transfer, 621 bytes of data (zstd !) |
101 4 files to transfer, 621 bytes of data (zstd !) |
102 transferred 621 bytes in * seconds (* */sec) (glob) (zstd !) |
102 transferred 621 bytes in * seconds (* */sec) (glob) (zstd !) |
140 |
140 |
141 empty default pull |
141 empty default pull |
142 |
142 |
143 $ hg paths |
143 $ hg paths |
144 default = ssh://user@dummy/remote |
144 default = ssh://user@dummy/remote |
145 $ hg pull -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" |
145 $ hg pull |
146 pulling from ssh://user@dummy/remote |
146 pulling from ssh://user@dummy/remote |
147 searching for changes |
147 searching for changes |
148 no changes found |
148 no changes found |
149 |
149 |
150 pull from wrong ssh URL |
150 pull from wrong ssh URL |
151 |
151 |
152 $ hg pull -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" ssh://user@dummy/doesnotexist |
152 $ hg pull ssh://user@dummy/doesnotexist |
153 pulling from ssh://user@dummy/doesnotexist |
153 pulling from ssh://user@dummy/doesnotexist |
154 remote: abort: repository doesnotexist not found |
154 remote: abort: repository doesnotexist not found |
155 abort: no suitable response from remote hg |
155 abort: no suitable response from remote hg |
156 [255] |
156 [255] |
157 |
157 |
179 summary: add |
179 summary: add |
180 |
180 |
181 |
181 |
182 find incoming on the remote side |
182 find incoming on the remote side |
183 |
183 |
184 $ hg incoming -R ../remote -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" ssh://user@dummy/local |
184 $ hg incoming -R ../remote ssh://user@dummy/local |
185 comparing with ssh://user@dummy/local |
185 comparing with ssh://user@dummy/local |
186 searching for changes |
186 searching for changes |
187 changeset: 3:a28a9d1a809c |
187 changeset: 3:a28a9d1a809c |
188 tag: tip |
188 tag: tip |
189 parent: 0:1160648e36ce |
189 parent: 0:1160648e36ce |
192 summary: add |
192 summary: add |
193 |
193 |
194 |
194 |
195 find incoming on the remote side (using absolute path) |
195 find incoming on the remote side (using absolute path) |
196 |
196 |
197 $ hg incoming -R ../remote -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" "ssh://user@dummy/`pwd`" |
197 $ hg incoming -R ../remote "ssh://user@dummy/`pwd`" |
198 comparing with ssh://user@dummy/$TESTTMP/local |
198 comparing with ssh://user@dummy/$TESTTMP/local |
199 searching for changes |
199 searching for changes |
200 changeset: 3:a28a9d1a809c |
200 changeset: 3:a28a9d1a809c |
201 tag: tip |
201 tag: tip |
202 parent: 0:1160648e36ce |
202 parent: 0:1160648e36ce |
254 pushing to ssh://user@dummy/remote |
254 pushing to ssh://user@dummy/remote |
255 searching for changes |
255 searching for changes |
256 no changes found |
256 no changes found |
257 exporting bookmark foo |
257 exporting bookmark foo |
258 [1] |
258 [1] |
259 $ hg debugpushkey --config ui.ssh="\"$PYTHON\" \"$TESTDIR/dummyssh\"" ssh://user@dummy/remote bookmarks |
259 $ hg debugpushkey ssh://user@dummy/remote bookmarks |
260 foo 1160648e36cec0054048a7edc4110c6f84fde594 |
260 foo 1160648e36cec0054048a7edc4110c6f84fde594 |
261 $ hg book -f foo |
261 $ hg book -f foo |
262 $ hg push --traceback |
262 $ hg push --traceback |
263 pushing to ssh://user@dummy/remote |
263 pushing to ssh://user@dummy/remote |
264 searching for changes |
264 searching for changes |
326 clone bookmarks |
326 clone bookmarks |
327 |
327 |
328 $ hg -R ../remote bookmark test |
328 $ hg -R ../remote bookmark test |
329 $ hg -R ../remote bookmarks |
329 $ hg -R ../remote bookmarks |
330 * test 4:6c0482d977a3 |
330 * test 4:6c0482d977a3 |
331 $ hg clone -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" ssh://user@dummy/remote local-bookmarks |
331 $ hg clone ssh://user@dummy/remote local-bookmarks |
332 requesting all changes |
332 requesting all changes |
333 adding changesets |
333 adding changesets |
334 adding manifests |
334 adding manifests |
335 adding file changes |
335 adding file changes |
336 added 6 changesets with 5 changes to 4 files (+1 heads) |
336 added 6 changesets with 5 changes to 4 files (+1 heads) |
354 hide outer repo |
354 hide outer repo |
355 $ hg init |
355 $ hg init |
356 |
356 |
357 Test remote paths with spaces (issue2983): |
357 Test remote paths with spaces (issue2983): |
358 |
358 |
359 $ hg init --ssh "\"$PYTHON\" \"$TESTDIR/dummyssh\"" "ssh://user@dummy/a repo" |
359 $ hg init "ssh://user@dummy/a repo" |
360 $ touch "$TESTTMP/a repo/test" |
360 $ touch "$TESTTMP/a repo/test" |
361 $ hg -R 'a repo' commit -A -m "test" |
361 $ hg -R 'a repo' commit -A -m "test" |
362 adding test |
362 adding test |
363 $ hg -R 'a repo' tag tag |
363 $ hg -R 'a repo' tag tag |
364 $ hg id --ssh "\"$PYTHON\" \"$TESTDIR/dummyssh\"" "ssh://user@dummy/a repo" |
364 $ hg id "ssh://user@dummy/a repo" |
365 73649e48688a |
365 73649e48688a |
366 |
366 |
367 $ hg id --ssh "\"$PYTHON\" \"$TESTDIR/dummyssh\"" "ssh://user@dummy/a repo#noNoNO" |
367 $ hg id "ssh://user@dummy/a repo#noNoNO" |
368 abort: unknown revision 'noNoNO' |
368 abort: unknown revision 'noNoNO' |
369 [255] |
369 [255] |
370 |
370 |
371 Test (non-)escaping of remote paths with spaces when cloning (issue3145): |
371 Test (non-)escaping of remote paths with spaces when cloning (issue3145): |
372 |
372 |
373 $ hg clone --ssh "\"$PYTHON\" \"$TESTDIR/dummyssh\"" "ssh://user@dummy/a repo" |
373 $ hg clone "ssh://user@dummy/a repo" |
374 destination directory: a repo |
374 destination directory: a repo |
375 abort: destination 'a repo' is not empty |
375 abort: destination 'a repo' is not empty |
376 [10] |
376 [10] |
377 |
377 |
378 Test hg-ssh using a helper script that will restore PYTHONPATH (which might |
378 Test hg-ssh using a helper script that will restore PYTHONPATH (which might |
581 > return 1 |
580 > return 1 |
582 > EOF |
581 > EOF |
583 |
582 |
584 $ echo "pretxnchangegroup.fail = python:$TESTTMP/failhook:hook" >> remote/.hg/hgrc |
583 $ echo "pretxnchangegroup.fail = python:$TESTTMP/failhook:hook" >> remote/.hg/hgrc |
585 |
584 |
586 $ hg -q --config ui.ssh="\"$PYTHON\" $TESTDIR/dummyssh" clone ssh://user@dummy/remote hookout |
585 $ hg -q clone ssh://user@dummy/remote hookout |
587 $ cd hookout |
586 $ cd hookout |
588 $ touch hookfailure |
587 $ touch hookfailure |
589 $ hg -q commit -A -m 'remote hook failure' |
588 $ hg -q commit -A -m 'remote hook failure' |
590 $ hg --config ui.ssh="\"$PYTHON\" $TESTDIR/dummyssh" push |
589 $ hg push |
591 pushing to ssh://user@dummy/remote |
590 pushing to ssh://user@dummy/remote |
592 searching for changes |
591 searching for changes |
593 remote: adding changesets |
592 remote: adding changesets |
594 remote: adding manifests |
593 remote: adding manifests |
595 remote: adding file changes |
594 remote: adding file changes |
605 $ hg -R ../remote commit --message "more foo to be pulled" |
604 $ hg -R ../remote commit --message "more foo to be pulled" |
606 $ cat >> ../remote/.hg/hgrc << EOF |
605 $ cat >> ../remote/.hg/hgrc << EOF |
607 > [extensions] |
606 > [extensions] |
608 > crash = ${TESTDIR}/crashgetbundler.py |
607 > crash = ${TESTDIR}/crashgetbundler.py |
609 > EOF |
608 > EOF |
610 $ hg --config ui.ssh="\"$PYTHON\" $TESTDIR/dummyssh" pull |
609 $ hg pull |
611 pulling from ssh://user@dummy/remote |
610 pulling from ssh://user@dummy/remote |
612 searching for changes |
611 searching for changes |
613 adding changesets |
612 adding changesets |
614 remote: abort: this is an exercise |
613 remote: abort: this is an exercise |
615 transaction abort! |
614 transaction abort! |