tests/test-fetch.t
author Pierre-Yves David <pierre-yves.david@ens-lyon.org>
Sat, 15 Apr 2017 02:53:51 +0200
changeset 32014 818cc18a7574
parent 28964 9dcc9ed26d33
child 34661 eb586ed5d8ce
permissions -rw-r--r--
obsolescence: add test for the "branch replacement" logic during push, case B7 Mercurial checks for the introduction of new heads on push. Evolution comes into play to detect if existing branches on the server are being replaced by some of the new one we push. This changeset adds test for the improved "branch replacement" logic introduce in an earlier commits. This tests initially lived in the evolve extensions. Since we now have the code handling this logic in core, it make sense to have the tests in core too. See inline documentation for details about the test case added in this changeset.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
22046
7a9cbb315d84 tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents: 21406
diff changeset
     1
#require serve
15446
c5c9ca3719f9 tests: use 'hghave serve' to guard tests that requires serve daemon management
Mads Kiilerich <mads@kiilerich.com>
parents: 15244
diff changeset
     2
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
     3
  $ echo "[extensions]" >> $HGRCPATH
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
     4
  $ echo "fetch=" >> $HGRCPATH
6246
35bf9c23e17a adjust test-fetch output to non-default HGPORT, e.g. with run-tests.py -j
Thomas Arendsen Hein <thomas@intevation.de>
parents: 6235
diff changeset
     5
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
     6
test fetch with default branches only
2822
4f7abf341cd4 fetch: fix breakage from mpm.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
     7
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
     8
  $ hg init a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
     9
  $ echo a > a/a
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
    10
  $ hg --cwd a commit -Ama
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    11
  adding a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    12
  $ hg clone a b
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    13
  updating to branch default
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    14
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    15
  $ hg clone a c
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    16
  updating to branch default
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    17
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    18
  $ echo b > a/b
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
    19
  $ hg --cwd a commit -Amb
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    20
  adding b
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    21
  $ hg --cwd a parents -q
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
    22
  1:d2ae7f538514
2822
4f7abf341cd4 fetch: fix breakage from mpm.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    23
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    24
should pull one change
2822
4f7abf341cd4 fetch: fix breakage from mpm.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    25
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    26
  $ hg --cwd b fetch ../a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    27
  pulling from ../a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    28
  searching for changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    29
  adding changesets
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    30
  adding manifests
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    31
  adding file changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    32
  added 1 changesets with 1 changes to 1 files
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    33
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    34
  $ hg --cwd b parents -q
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
    35
  1:d2ae7f538514
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    36
  $ echo c > c/c
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
    37
  $ hg --cwd c commit -Amc
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    38
  adding c
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    39
  $ hg clone c d
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    40
  updating to branch default
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    41
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    42
  $ hg clone c e
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    43
  updating to branch default
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    44
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
2822
4f7abf341cd4 fetch: fix breakage from mpm.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    45
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    46
We cannot use the default commit message if fetching from a local
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    47
repo, because the path of the repo will be included in the commit
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    48
message, making every commit appear different.
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    49
should merge c into a
5798
86f5d8f608b7 fetch: hide authentication details
Bryan O'Sullivan <bos@serpentine.com>
parents: 2990
diff changeset
    50
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
    51
  $ hg --cwd c fetch -d '0 0' -m 'automated merge' ../a
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    52
  pulling from ../a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    53
  searching for changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    54
  adding changesets
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    55
  adding manifests
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    56
  adding file changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    57
  added 1 changesets with 1 changes to 1 files (+1 heads)
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
    58
  updating to 2:d2ae7f538514
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    59
  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
    60
  merging with 1:d36c0562f908
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    61
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
    62
  new changeset 3:a323a0c43ec4 merges remote changes with local
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    63
  $ ls c
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    64
  a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    65
  b
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    66
  c
28549
e01bd7385f4f tests: reorder hg serve commands
Jun Wu <quark@fb.com>
parents: 25295
diff changeset
    67
  $ hg serve --cwd a -a localhost -p $HGPORT -d --pid-file=hg.pid
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    68
  $ cat a/hg.pid >> "$DAEMON_PIDS"
5798
86f5d8f608b7 fetch: hide authentication details
Bryan O'Sullivan <bos@serpentine.com>
parents: 2990
diff changeset
    69
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    70
fetch over http, no auth
21406
288a793c3167 fetch: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
    71
(this also tests that editor is invoked if '--edit' is specified)
5798
86f5d8f608b7 fetch: hide authentication details
Bryan O'Sullivan <bos@serpentine.com>
parents: 2990
diff changeset
    72
21406
288a793c3167 fetch: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
    73
  $ HGEDITOR=cat hg --cwd d fetch --edit http://localhost:$HGPORT/
12643
d08bb64888bc tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12535
diff changeset
    74
  pulling from http://localhost:$HGPORT/
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    75
  searching for changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    76
  adding changesets
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    77
  adding manifests
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    78
  adding file changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    79
  added 1 changesets with 1 changes to 1 files (+1 heads)
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
    80
  updating to 2:d2ae7f538514
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    81
  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
    82
  merging with 1:d36c0562f908
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    83
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
21406
288a793c3167 fetch: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
    84
  Automated merge with http://localhost:$HGPORT/
288a793c3167 fetch: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
    85
  
288a793c3167 fetch: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
    86
  
288a793c3167 fetch: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
    87
  HG: Enter commit message.  Lines beginning with 'HG:' are removed.
288a793c3167 fetch: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
    88
  HG: Leave message empty to abort commit.
288a793c3167 fetch: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
    89
  HG: --
288a793c3167 fetch: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
    90
  HG: user: test
288a793c3167 fetch: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
    91
  HG: branch merge
288a793c3167 fetch: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
    92
  HG: branch 'default'
288a793c3167 fetch: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
    93
  HG: changed c
12535
975ec4ce961c tests: fix test-fetch port number variability
Matt Mackall <mpm@selenic.com>
parents: 12426
diff changeset
    94
  new changeset 3:* merges remote changes with local (glob)
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
    95
  $ hg --cwd d tip --template '{desc}\n'
12643
d08bb64888bc tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12535
diff changeset
    96
  Automated merge with http://localhost:$HGPORT/
21406
288a793c3167 fetch: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
    97
  $ hg --cwd d status --rev 'tip^1' --rev tip
288a793c3167 fetch: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
    98
  A c
288a793c3167 fetch: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
    99
  $ hg --cwd d status --rev 'tip^2' --rev tip
288a793c3167 fetch: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
   100
  A b
6206
0b6f12495276 fetch: switch the default parent used for a merge
Bryan O'Sullivan <bos@serpentine.com>
parents: 5798
diff changeset
   101
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   102
fetch over http with auth (should be hidden in desc)
21406
288a793c3167 fetch: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
   103
(this also tests that editor is not invoked if '--edit' is not
288a793c3167 fetch: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
   104
specified, even though commit message is not specified explicitly)
6206
0b6f12495276 fetch: switch the default parent used for a merge
Bryan O'Sullivan <bos@serpentine.com>
parents: 5798
diff changeset
   105
21406
288a793c3167 fetch: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
   106
  $ HGEDITOR=cat hg --cwd e fetch http://user:password@localhost:$HGPORT/
12643
d08bb64888bc tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12535
diff changeset
   107
  pulling from http://user:***@localhost:$HGPORT/
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   108
  searching for changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   109
  adding changesets
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   110
  adding manifests
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   111
  adding file changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   112
  added 1 changesets with 1 changes to 1 files (+1 heads)
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   113
  updating to 2:d2ae7f538514
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   114
  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   115
  merging with 1:d36c0562f908
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   116
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
12535
975ec4ce961c tests: fix test-fetch port number variability
Matt Mackall <mpm@selenic.com>
parents: 12426
diff changeset
   117
  new changeset 3:* merges remote changes with local (glob)
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   118
  $ hg --cwd e tip --template '{desc}\n'
12643
d08bb64888bc tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12535
diff changeset
   119
  Automated merge with http://localhost:$HGPORT/
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   120
  $ hg clone a f
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   121
  updating to branch default
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   122
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   123
  $ hg clone a g
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   124
  updating to branch default
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   125
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   126
  $ echo f > f/f
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   127
  $ hg --cwd f ci -Amf
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   128
  adding f
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   129
  $ echo g > g/g
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   130
  $ hg --cwd g ci -Amg
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   131
  adding g
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   132
  $ hg clone -q f h
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   133
  $ hg clone -q g i
6206
0b6f12495276 fetch: switch the default parent used for a merge
Bryan O'Sullivan <bos@serpentine.com>
parents: 5798
diff changeset
   134
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   135
should merge f into g
6226
bd61e44eb2cc fetch: don't proceed if working directory is missing files (issue988)
Bryan O'Sullivan <bos@serpentine.com>
parents: 6207
diff changeset
   136
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   137
  $ hg --cwd g fetch -d '0 0' --switch -m 'automated merge' ../f
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   138
  pulling from ../f
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   139
  searching for changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   140
  adding changesets
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   141
  adding manifests
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   142
  adding file changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   143
  added 1 changesets with 1 changes to 1 files (+1 heads)
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   144
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   145
  merging with 3:6343ca3eff20
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   146
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   147
  new changeset 4:f7faa0b7d3c6 merges remote changes with local
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   148
  $ rm i/g
6226
bd61e44eb2cc fetch: don't proceed if working directory is missing files (issue988)
Bryan O'Sullivan <bos@serpentine.com>
parents: 6207
diff changeset
   149
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   150
should abort, because i is modified
6235
d16798000be0 test-fetch failed due to non-zero exit code
Thomas Arendsen Hein <thomas@intevation.de>
parents: 6226
diff changeset
   151
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   152
  $ hg --cwd i fetch ../h
22676
a014fdc97154 fetch: use cmdutil.bailifchanged()
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 22046
diff changeset
   153
  abort: uncommitted changes
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   154
  [255]
7007
a6b74fbb5ce0 fetch: added support for named branches
Sune Foldager <cryo@cyanite.org>
parents: 6246
diff changeset
   155
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   156
test fetch with named branches
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   157
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   158
  $ hg init nbase
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   159
  $ echo base > nbase/a
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   160
  $ hg -R nbase ci -Am base
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   161
  adding a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   162
  $ hg -R nbase branch a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   163
  marked working directory as branch a
15615
41885892796e branch: warn on branching
Matt Mackall <mpm@selenic.com>
parents: 15244
diff changeset
   164
  (branches are permanent and global, did you want a bookmark?)
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   165
  $ echo a > nbase/a
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   166
  $ hg -R nbase ci -m a
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   167
  $ hg -R nbase up -C 0
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   168
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   169
  $ hg -R nbase branch b
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   170
  marked working directory as branch b
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   171
  $ echo b > nbase/b
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   172
  $ hg -R nbase ci -Am b
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   173
  adding b
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   174
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   175
pull in change on foreign branch
7007
a6b74fbb5ce0 fetch: added support for named branches
Sune Foldager <cryo@cyanite.org>
parents: 6246
diff changeset
   176
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   177
  $ hg clone nbase n1
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   178
  updating to branch default
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   179
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   180
  $ hg clone nbase n2
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   181
  updating to branch default
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   182
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   183
  $ hg -R n1 up -C a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   184
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   185
  $ echo aa > n1/a
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   186
  $ hg -R n1 ci -m a1
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   187
  $ hg -R n2 up -C b
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   188
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   189
  $ hg -R n2 fetch -m 'merge' n1
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   190
  pulling from n1
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   191
  searching for changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   192
  adding changesets
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   193
  adding manifests
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   194
  adding file changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   195
  added 1 changesets with 1 changes to 1 files
7007
a6b74fbb5ce0 fetch: added support for named branches
Sune Foldager <cryo@cyanite.org>
parents: 6246
diff changeset
   196
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   197
parent should be 2 (no automatic update)
7007
a6b74fbb5ce0 fetch: added support for named branches
Sune Foldager <cryo@cyanite.org>
parents: 6246
diff changeset
   198
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   199
  $ hg -R n2 parents --template '{rev}\n'
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   200
  2
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   201
  $ rm -fr n1 n2
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   202
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   203
pull in changes on both foreign and local branches
7007
a6b74fbb5ce0 fetch: added support for named branches
Sune Foldager <cryo@cyanite.org>
parents: 6246
diff changeset
   204
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   205
  $ hg clone nbase n1
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   206
  updating to branch default
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   207
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   208
  $ hg clone nbase n2
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   209
  updating to branch default
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   210
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   211
  $ hg -R n1 up -C a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   212
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   213
  $ echo aa > n1/a
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   214
  $ hg -R n1 ci -m a1
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   215
  $ hg -R n1 up -C b
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   216
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   217
  $ echo bb > n1/b
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   218
  $ hg -R n1 ci -m b1
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   219
  $ hg -R n2 up -C b
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   220
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   221
  $ hg -R n2 fetch -m 'merge' n1
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   222
  pulling from n1
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   223
  searching for changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   224
  adding changesets
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   225
  adding manifests
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   226
  adding file changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   227
  added 2 changesets with 2 changes to 2 files
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   228
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
7007
a6b74fbb5ce0 fetch: added support for named branches
Sune Foldager <cryo@cyanite.org>
parents: 6246
diff changeset
   229
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   230
parent should be 4 (fast forward)
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   231
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   232
  $ hg -R n2 parents --template '{rev}\n'
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   233
  4
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   234
  $ rm -fr n1 n2
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   235
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   236
pull changes on foreign (2 new heads) and local (1 new head) branches
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   237
with a local change
7007
a6b74fbb5ce0 fetch: added support for named branches
Sune Foldager <cryo@cyanite.org>
parents: 6246
diff changeset
   238
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   239
  $ hg clone nbase n1
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   240
  updating to branch default
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   241
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   242
  $ hg clone nbase n2
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   243
  updating to branch default
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   244
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   245
  $ hg -R n1 up -C a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   246
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   247
  $ echo a1 > n1/a
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   248
  $ hg -R n1 ci -m a1
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   249
  $ hg -R n1 up -C b
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   250
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   251
  $ echo bb > n1/b
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   252
  $ hg -R n1 ci -m b1
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   253
  $ hg -R n1 up -C 1
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   254
  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   255
  $ echo a2 > n1/a
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   256
  $ hg -R n1 ci -m a2
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   257
  created new head
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   258
  $ hg -R n2 up -C b
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   259
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   260
  $ echo change >> n2/c
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   261
  $ hg -R n2 ci -A -m local
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   262
  adding c
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   263
  $ hg -R n2 fetch -d '0 0' -m 'merge' n1
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   264
  pulling from n1
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   265
  searching for changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   266
  adding changesets
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   267
  adding manifests
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   268
  adding file changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   269
  added 3 changesets with 3 changes to 2 files (+2 heads)
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   270
  updating to 5:3c4a837a864f
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   271
  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   272
  merging with 3:1267f84a9ea5
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   273
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   274
  new changeset 7:2cf2a1261f21 merges remote changes with local
7007
a6b74fbb5ce0 fetch: added support for named branches
Sune Foldager <cryo@cyanite.org>
parents: 6246
diff changeset
   275
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   276
parent should be 7 (new merge changeset)
7007
a6b74fbb5ce0 fetch: added support for named branches
Sune Foldager <cryo@cyanite.org>
parents: 6246
diff changeset
   277
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   278
  $ hg -R n2 parents --template '{rev}\n'
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   279
  7
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   280
  $ rm -fr n1 n2
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   281
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   282
pull in changes on foreign (merge of local branch) and local (2 new
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   283
heads) with a local change
7007
a6b74fbb5ce0 fetch: added support for named branches
Sune Foldager <cryo@cyanite.org>
parents: 6246
diff changeset
   284
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   285
  $ hg clone nbase n1
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   286
  updating to branch default
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   287
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   288
  $ hg clone nbase n2
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   289
  updating to branch default
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   290
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   291
  $ hg -R n1 up -C a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   292
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   293
  $ hg -R n1 merge b
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   294
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   295
  (branch merge, don't forget to commit)
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   296
  $ hg -R n1 ci -m merge
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   297
  $ hg -R n1 up -C 2
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   298
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   299
  $ echo c > n1/a
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   300
  $ hg -R n1 ci -m c
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   301
  $ hg -R n1 up -C 2
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   302
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   303
  $ echo cc > n1/a
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   304
  $ hg -R n1 ci -m cc
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   305
  created new head
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   306
  $ hg -R n2 up -C b
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   307
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   308
  $ echo change >> n2/b
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   309
  $ hg -R n2 ci -A -m local
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   310
  $ hg -R n2 fetch -m 'merge' n1
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   311
  pulling from n1
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   312
  searching for changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   313
  adding changesets
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   314
  adding manifests
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   315
  adding file changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   316
  added 3 changesets with 2 changes to 1 files (+2 heads)
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   317
  not merging with 1 other new branch heads (use "hg heads ." and "hg merge" to merge them)
12711
b885f28fa4fa fetch: fix and document exit codes (issue2356)
Matt Mackall <mpm@selenic.com>
parents: 12643
diff changeset
   318
  [1]
7049
6489ee64b522 fetch: use dirstate branch instead of first parents
Sune Foldager <cryo@cyanite.org>
parents: 7007
diff changeset
   319
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   320
parent should be 3 (fetch did not merge anything)
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   321
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   322
  $ hg -R n2 parents --template '{rev}\n'
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   323
  3
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   324
  $ rm -fr n1 n2
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   325
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   326
pull in change on different branch than dirstate
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   327
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   328
  $ hg init n1
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   329
  $ echo a > n1/a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   330
  $ hg -R n1 ci -Am initial
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   331
  adding a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   332
  $ hg clone n1 n2
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   333
  updating to branch default
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   334
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   335
  $ echo b > n1/a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   336
  $ hg -R n1 ci -m next
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   337
  $ hg -R n2 branch topic
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   338
  marked working directory as branch topic
15615
41885892796e branch: warn on branching
Matt Mackall <mpm@selenic.com>
parents: 15244
diff changeset
   339
  (branches are permanent and global, did you want a bookmark?)
15244
f6d5d01725db tests: cleanup of test-fetch.t
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
   340
  $ hg -R n2 fetch -m merge n1
24368
55fd99a23fdc fetch: use an abort hint where appropriate
Yuya Nishihara <yuya@tcha.org>
parents: 24365
diff changeset
   341
  abort: working directory not at branch tip
28964
9dcc9ed26d33 fetch: use single quotes around command hint
timeless <timeless@mozdev.org>
parents: 28549
diff changeset
   342
  (use 'hg update' to check out branch tip)
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   343
  [255]
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   344
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   345
parent should be 0 (fetch did not update or merge anything)
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   346
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   347
  $ hg -R n2 parents --template '{rev}\n'
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   348
  0
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   349
  $ rm -fr n1 n2
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   350
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   351
test fetch with inactive branches
7855
aa1a87f7544f regression test for issue1552
Benjamin Pollack <benjamin@bitquabit.com>
parents: 7344
diff changeset
   352
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   353
  $ hg init ib1
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   354
  $ echo a > ib1/a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   355
  $ hg --cwd ib1 ci -Am base
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   356
  adding a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   357
  $ hg --cwd ib1 branch second
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   358
  marked working directory as branch second
15615
41885892796e branch: warn on branching
Matt Mackall <mpm@selenic.com>
parents: 15244
diff changeset
   359
  (branches are permanent and global, did you want a bookmark?)
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   360
  $ echo b > ib1/b
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   361
  $ hg --cwd ib1 ci -Am onsecond
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   362
  adding b
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   363
  $ hg --cwd ib1 branch -f default
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   364
  marked working directory as branch default
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   365
  $ echo c > ib1/c
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   366
  $ hg --cwd ib1 ci -Am newdefault
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   367
  adding c
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   368
  created new head
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   369
  $ hg clone ib1 ib2
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   370
  updating to branch default
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   371
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   372
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   373
fetch should succeed
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   374
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   375
  $ hg --cwd ib2 fetch ../ib1
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   376
  pulling from ../ib1
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   377
  searching for changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   378
  no changes found
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   379
  $ rm -fr ib1 ib2
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   380
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   381
test issue1726
9093
0b2b269ba3d0 branch heads: fix regression introduced in e67e5b60e55f (issue1726)
Henrik Stuart <hg@hstuart.dk>
parents: 7855
diff changeset
   382
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   383
  $ hg init i1726r1
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   384
  $ echo a > i1726r1/a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   385
  $ hg --cwd i1726r1 ci -Am base
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   386
  adding a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   387
  $ hg clone i1726r1 i1726r2
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   388
  updating to branch default
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   389
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   390
  $ echo b > i1726r1/a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   391
  $ hg --cwd i1726r1 ci -m second
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   392
  $ echo c > i1726r2/a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   393
  $ hg --cwd i1726r2 ci -m third
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   394
  $ HGMERGE=true hg --cwd i1726r2 fetch ../i1726r1
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   395
  pulling from ../i1726r1
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   396
  searching for changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   397
  adding changesets
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   398
  adding manifests
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   399
  adding file changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   400
  added 1 changesets with 1 changes to 1 files (+1 heads)
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   401
  updating to 2:7837755a2789
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   402
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   403
  merging with 1:d1f0c6c48ebd
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   404
  merging a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   405
  0 files updated, 1 files merged, 0 files removed, 0 files unresolved
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   406
  new changeset 3:* merges remote changes with local (glob)
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   407
  $ hg --cwd i1726r2 heads default --template '{rev}\n'
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   408
  3
10580
612c142b7a82 fetch: fix newheads calculation (issue2047)
Sune Foldager <cryo@cyanite.org>
parents: 10398
diff changeset
   409
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   410
test issue2047
7344
58fd3c718ca4 tests: add killdaemons helper script
Matt Mackall <mpm@selenic.com>
parents: 7049
diff changeset
   411
12426
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   412
  $ hg -q init i2047a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   413
  $ cd i2047a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   414
  $ echo a > a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   415
  $ hg -q ci -Am a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   416
  $ hg -q branch stable
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   417
  $ echo b > b
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   418
  $ hg -q ci -Am b
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   419
  $ cd ..
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   420
  $ hg -q clone -r 0 i2047a i2047b
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   421
  $ cd i2047b
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   422
  $ hg fetch ../i2047a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   423
  pulling from ../i2047a
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   424
  searching for changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   425
  adding changesets
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   426
  adding manifests
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   427
  adding file changes
dd600141616d tests: unify test-fetch
Matt Mackall <mpm@selenic.com>
parents: 10581
diff changeset
   428
  added 1 changesets with 1 changes to 1 files
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 15623
diff changeset
   429
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 15623
diff changeset
   430
  $ cd ..