tests/test-subrepo-recursion.t
author Martin Geisler <mg@aragost.com>
Mon, 17 Oct 2011 18:01:38 +0200
branchstable
changeset 15287 b3e19c355ca7
parent 15286 4be845e3932c
child 15321 e174353e8cda
permissions -rw-r--r--
subrepo: abort in hgsubrepo._get if the destination is obstructed Before, we deleted foo when we determined that there were zero changesets in the foo subrepo. Any files in foo was deleted too. We now delete foo/.hg instead, and the normal checks in hg.clone will then abort if there are untracked files in foo.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12166
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
     1
Create test repository:
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
     2
12272
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
     3
  $ hg init repo
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
     4
  $ cd repo
12166
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
     5
  $ echo x1 > x.txt
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
     6
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
     7
  $ hg init foo
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
     8
  $ cd foo
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
     9
  $ echo y1 > y.txt
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    10
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    11
  $ hg init bar
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    12
  $ cd bar
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    13
  $ echo z1 > z.txt
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    14
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    15
  $ cd ..
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    16
  $ echo 'bar = bar' > .hgsub
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    17
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    18
  $ cd ..
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    19
  $ echo 'foo = foo' > .hgsub
12270
166b9866580a add: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12175
diff changeset
    20
166b9866580a add: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12175
diff changeset
    21
Add files --- .hgsub files must go first to trigger subrepos:
166b9866580a add: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12175
diff changeset
    22
166b9866580a add: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12175
diff changeset
    23
  $ hg add -S .hgsub
166b9866580a add: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12175
diff changeset
    24
  $ hg add -S foo/.hgsub
166b9866580a add: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12175
diff changeset
    25
  $ hg add -S foo/bar
166b9866580a add: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12175
diff changeset
    26
  adding foo/bar/z.txt
166b9866580a add: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12175
diff changeset
    27
  $ hg add -S
166b9866580a add: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12175
diff changeset
    28
  adding x.txt
166b9866580a add: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12175
diff changeset
    29
  adding foo/y.txt
12166
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    30
12175
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    31
Test recursive status without committing anything:
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    32
12588
41fa32a6b6f8 test-subrepo-recursion: deleted default arguments
Erik Zielke <ez@aragost.com>
parents: 12587
diff changeset
    33
  $ hg status -S
12175
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    34
  A .hgsub
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    35
  A foo/.hgsub
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    36
  A foo/bar/z.txt
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    37
  A foo/y.txt
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    38
  A x.txt
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    39
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    40
Test recursive diff without committing anything:
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    41
12588
41fa32a6b6f8 test-subrepo-recursion: deleted default arguments
Erik Zielke <ez@aragost.com>
parents: 12587
diff changeset
    42
  $ hg diff --nodates -S foo
12175
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    43
  diff -r 000000000000 foo/.hgsub
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    44
  --- /dev/null
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    45
  +++ b/foo/.hgsub
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    46
  @@ -0,0 +1,1 @@
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    47
  +bar = bar
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    48
  diff -r 000000000000 foo/y.txt
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    49
  --- /dev/null
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    50
  +++ b/foo/y.txt
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    51
  @@ -0,0 +1,1 @@
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    52
  +y1
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    53
  diff -r 000000000000 foo/bar/z.txt
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    54
  --- /dev/null
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    55
  +++ b/foo/bar/z.txt
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    56
  @@ -0,0 +1,1 @@
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    57
  +z1
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    58
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    59
Commits:
c0a8f9dea0f6 subrepos: handle modified but uncommitted .hgsub
Martin Geisler <mg@lazybytes.net>
parents: 12167
diff changeset
    60
12166
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    61
  $ hg commit -m 0-0-0
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    62
  committing subrepository foo
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    63
  committing subrepository foo/bar
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    64
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    65
  $ cd foo
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    66
  $ echo y2 >> y.txt
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    67
  $ hg commit -m 0-1-0
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    68
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    69
  $ cd bar
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    70
  $ echo z2 >> z.txt
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    71
  $ hg commit -m 0-1-1
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    72
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    73
  $ cd ..
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    74
  $ hg commit -m 0-2-1
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    75
  committing subrepository bar
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    76
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    77
  $ cd ..
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    78
  $ hg commit -m 1-2-1
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    79
  committing subrepository foo
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    80
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    81
Change working directory:
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    82
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    83
  $ echo y3 >> foo/y.txt
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    84
  $ echo z3 >> foo/bar/z.txt
12588
41fa32a6b6f8 test-subrepo-recursion: deleted default arguments
Erik Zielke <ez@aragost.com>
parents: 12587
diff changeset
    85
  $ hg status -S
12166
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    86
  M foo/bar/z.txt
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
    87
  M foo/y.txt
12588
41fa32a6b6f8 test-subrepo-recursion: deleted default arguments
Erik Zielke <ez@aragost.com>
parents: 12587
diff changeset
    88
  $ hg diff --nodates -S
12167
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
    89
  diff -r d254738c5f5e foo/y.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
    90
  --- a/foo/y.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
    91
  +++ b/foo/y.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
    92
  @@ -1,2 +1,3 @@
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
    93
   y1
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
    94
   y2
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
    95
  +y3
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
    96
  diff -r 9647f22de499 foo/bar/z.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
    97
  --- a/foo/bar/z.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
    98
  +++ b/foo/bar/z.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
    99
  @@ -1,2 +1,3 @@
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   100
   z1
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   101
   z2
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   102
  +z3
12166
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   103
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   104
Status call crossing repository boundaries:
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   105
12588
41fa32a6b6f8 test-subrepo-recursion: deleted default arguments
Erik Zielke <ez@aragost.com>
parents: 12587
diff changeset
   106
  $ hg status -S foo/bar/z.txt
12166
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   107
  M foo/bar/z.txt
12588
41fa32a6b6f8 test-subrepo-recursion: deleted default arguments
Erik Zielke <ez@aragost.com>
parents: 12587
diff changeset
   108
  $ hg status -S -I 'foo/?.txt'
12166
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   109
  M foo/y.txt
12588
41fa32a6b6f8 test-subrepo-recursion: deleted default arguments
Erik Zielke <ez@aragost.com>
parents: 12587
diff changeset
   110
  $ hg status -S -I '**/?.txt'
12166
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   111
  M foo/bar/z.txt
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   112
  M foo/y.txt
12588
41fa32a6b6f8 test-subrepo-recursion: deleted default arguments
Erik Zielke <ez@aragost.com>
parents: 12587
diff changeset
   113
  $ hg diff --nodates -S -I '**/?.txt'
12167
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   114
  diff -r d254738c5f5e foo/y.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   115
  --- a/foo/y.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   116
  +++ b/foo/y.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   117
  @@ -1,2 +1,3 @@
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   118
   y1
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   119
   y2
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   120
  +y3
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   121
  diff -r 9647f22de499 foo/bar/z.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   122
  --- a/foo/bar/z.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   123
  +++ b/foo/bar/z.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   124
  @@ -1,2 +1,3 @@
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   125
   z1
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   126
   z2
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   127
  +z3
12166
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   128
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   129
Status from within a subdirectory:
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   130
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   131
  $ mkdir dir
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   132
  $ cd dir
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   133
  $ echo a1 > a.txt
12588
41fa32a6b6f8 test-subrepo-recursion: deleted default arguments
Erik Zielke <ez@aragost.com>
parents: 12587
diff changeset
   134
  $ hg status -S
12166
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   135
  M foo/bar/z.txt
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   136
  M foo/y.txt
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   137
  ? dir/a.txt
12588
41fa32a6b6f8 test-subrepo-recursion: deleted default arguments
Erik Zielke <ez@aragost.com>
parents: 12587
diff changeset
   138
  $ hg diff --nodates -S
12167
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   139
  diff -r d254738c5f5e foo/y.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   140
  --- a/foo/y.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   141
  +++ b/foo/y.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   142
  @@ -1,2 +1,3 @@
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   143
   y1
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   144
   y2
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   145
  +y3
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   146
  diff -r 9647f22de499 foo/bar/z.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   147
  --- a/foo/bar/z.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   148
  +++ b/foo/bar/z.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   149
  @@ -1,2 +1,3 @@
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   150
   z1
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   151
   z2
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   152
  +z3
12166
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   153
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   154
Status with relative path:
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   155
12588
41fa32a6b6f8 test-subrepo-recursion: deleted default arguments
Erik Zielke <ez@aragost.com>
parents: 12587
diff changeset
   156
  $ hg status -S ..
12166
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   157
  M ../foo/bar/z.txt
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   158
  M ../foo/y.txt
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   159
  ? a.txt
12588
41fa32a6b6f8 test-subrepo-recursion: deleted default arguments
Erik Zielke <ez@aragost.com>
parents: 12587
diff changeset
   160
  $ hg diff --nodates -S ..
12167
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   161
  diff -r d254738c5f5e foo/y.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   162
  --- a/foo/y.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   163
  +++ b/foo/y.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   164
  @@ -1,2 +1,3 @@
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   165
   y1
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   166
   y2
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   167
  +y3
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   168
  diff -r 9647f22de499 foo/bar/z.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   169
  --- a/foo/bar/z.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   170
  +++ b/foo/bar/z.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   171
  @@ -1,2 +1,3 @@
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   172
   z1
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   173
   z2
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   174
  +z3
12166
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   175
  $ cd ..
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   176
12167
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   177
Cleanup and final commit:
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   178
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   179
  $ rm -r dir
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   180
  $ hg commit -m 2-3-2
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   181
  committing subrepository foo
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   182
  committing subrepository foo/bar
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   183
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   184
Log with the relationships between repo and its subrepo:
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   185
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   186
  $ hg log --template '{rev}:{node|short} {desc}\n'
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   187
  2:1326fa26d0c0 2-3-2
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   188
  1:4b3c9ff4f66b 1-2-1
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   189
  0:23376cbba0d8 0-0-0
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   190
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   191
  $ hg -R foo log --template '{rev}:{node|short} {desc}\n'
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   192
  3:65903cebad86 2-3-2
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   193
  2:d254738c5f5e 0-2-1
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   194
  1:8629ce7dcc39 0-1-0
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   195
  0:af048e97ade2 0-0-0
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   196
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   197
  $ hg -R foo/bar log --template '{rev}:{node|short} {desc}\n'
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   198
  2:31ecbdafd357 2-3-2
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   199
  1:9647f22de499 0-1-1
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   200
  0:4904098473f9 0-0-0
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   201
12166
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   202
Status between revisions:
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   203
12588
41fa32a6b6f8 test-subrepo-recursion: deleted default arguments
Erik Zielke <ez@aragost.com>
parents: 12587
diff changeset
   204
  $ hg status -S
41fa32a6b6f8 test-subrepo-recursion: deleted default arguments
Erik Zielke <ez@aragost.com>
parents: 12587
diff changeset
   205
  $ hg status -S --rev 0:1
12166
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   206
  M .hgsubstate
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   207
  M foo/.hgsubstate
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   208
  M foo/bar/z.txt
441a74b8def1 status: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
   209
  M foo/y.txt
12588
41fa32a6b6f8 test-subrepo-recursion: deleted default arguments
Erik Zielke <ez@aragost.com>
parents: 12587
diff changeset
   210
  $ hg diff --nodates -S -I '**/?.txt' --rev 0:1
12167
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   211
  diff -r af048e97ade2 -r d254738c5f5e foo/y.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   212
  --- a/foo/y.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   213
  +++ b/foo/y.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   214
  @@ -1,1 +1,2 @@
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   215
   y1
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   216
  +y2
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   217
  diff -r 4904098473f9 -r 9647f22de499 foo/bar/z.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   218
  --- a/foo/bar/z.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   219
  +++ b/foo/bar/z.txt
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   220
  @@ -1,1 +1,2 @@
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   221
   z1
d2c5b0927c28 diff: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12166
diff changeset
   222
  +z2
12272
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   223
13144
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   224
Enable progress extension for archive tests:
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   225
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   226
  $ cp $HGRCPATH $HGRCPATH.no-progress
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   227
  $ cat >> $HGRCPATH <<EOF
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   228
  > [extensions]
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   229
  > progress =
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   230
  > [progress]
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   231
  > assume-tty = 1
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   232
  > delay = 0
13149
735dd8e8a208 progress using tests: disable time estimates to avoid flakiness
Augie Fackler <durin42@gmail.com>
parents: 13144
diff changeset
   233
  > format = topic bar number
13144
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   234
  > refresh = 0
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   235
  > width = 60
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   236
  > EOF
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   237
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   238
Test archiving to a directory tree (the doubled lines in the output
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   239
only show up in the test output, not in real usage):
12323
f00953d9533c subrepo: add support for 'hg archive'
Martin Geisler <mg@aragost.com>
parents: 12316
diff changeset
   240
13144
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   241
  $ hg archive --subrepos ../archive 2>&1 | $TESTDIR/filtercr.py
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   242
  
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   243
  archiving [                                           ] 0/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   244
  archiving [                                           ] 0/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   245
  archiving [=============>                             ] 1/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   246
  archiving [=============>                             ] 1/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   247
  archiving [===========================>               ] 2/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   248
  archiving [===========================>               ] 2/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   249
  archiving [==========================================>] 3/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   250
  archiving [==========================================>] 3/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   251
                                                              
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   252
  archiving (foo) [                                     ] 0/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   253
  archiving (foo) [                                     ] 0/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   254
  archiving (foo) [===========>                         ] 1/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   255
  archiving (foo) [===========>                         ] 1/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   256
  archiving (foo) [=======================>             ] 2/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   257
  archiving (foo) [=======================>             ] 2/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   258
  archiving (foo) [====================================>] 3/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   259
  archiving (foo) [====================================>] 3/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   260
                                                              
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   261
  archiving (foo/bar) [                                 ] 0/1
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   262
  archiving (foo/bar) [                                 ] 0/1
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   263
  archiving (foo/bar) [================================>] 1/1
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   264
  archiving (foo/bar) [================================>] 1/1
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   265
                                                              \r (esc)
12363
8a5b6383ba02 test-subrepo-recursion: sort archive output for portability
Patrick Mezard <pmezard@gmail.com>
parents: 12339
diff changeset
   266
  $ find ../archive | sort
12323
f00953d9533c subrepo: add support for 'hg archive'
Martin Geisler <mg@aragost.com>
parents: 12316
diff changeset
   267
  ../archive
12363
8a5b6383ba02 test-subrepo-recursion: sort archive output for portability
Patrick Mezard <pmezard@gmail.com>
parents: 12339
diff changeset
   268
  ../archive/.hg_archival.txt
8a5b6383ba02 test-subrepo-recursion: sort archive output for portability
Patrick Mezard <pmezard@gmail.com>
parents: 12339
diff changeset
   269
  ../archive/.hgsub
8a5b6383ba02 test-subrepo-recursion: sort archive output for portability
Patrick Mezard <pmezard@gmail.com>
parents: 12339
diff changeset
   270
  ../archive/.hgsubstate
12323
f00953d9533c subrepo: add support for 'hg archive'
Martin Geisler <mg@aragost.com>
parents: 12316
diff changeset
   271
  ../archive/foo
12363
8a5b6383ba02 test-subrepo-recursion: sort archive output for portability
Patrick Mezard <pmezard@gmail.com>
parents: 12339
diff changeset
   272
  ../archive/foo/.hgsub
8a5b6383ba02 test-subrepo-recursion: sort archive output for portability
Patrick Mezard <pmezard@gmail.com>
parents: 12339
diff changeset
   273
  ../archive/foo/.hgsubstate
12323
f00953d9533c subrepo: add support for 'hg archive'
Martin Geisler <mg@aragost.com>
parents: 12316
diff changeset
   274
  ../archive/foo/bar
f00953d9533c subrepo: add support for 'hg archive'
Martin Geisler <mg@aragost.com>
parents: 12316
diff changeset
   275
  ../archive/foo/bar/z.txt
f00953d9533c subrepo: add support for 'hg archive'
Martin Geisler <mg@aragost.com>
parents: 12316
diff changeset
   276
  ../archive/foo/y.txt
f00953d9533c subrepo: add support for 'hg archive'
Martin Geisler <mg@aragost.com>
parents: 12316
diff changeset
   277
  ../archive/x.txt
f00953d9533c subrepo: add support for 'hg archive'
Martin Geisler <mg@aragost.com>
parents: 12316
diff changeset
   278
12339
f85338f509e4 tests: fixup tests using unzip -l
Matt Mackall <mpm@selenic.com>
parents: 12323
diff changeset
   279
Test archiving to zip file (unzip output is unstable):
12323
f00953d9533c subrepo: add support for 'hg archive'
Martin Geisler <mg@aragost.com>
parents: 12316
diff changeset
   280
13144
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   281
  $ hg archive --subrepos ../archive.zip 2>&1 | $TESTDIR/filtercr.py
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   282
  
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   283
  archiving [                                           ] 0/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   284
  archiving [                                           ] 0/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   285
  archiving [=============>                             ] 1/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   286
  archiving [=============>                             ] 1/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   287
  archiving [===========================>               ] 2/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   288
  archiving [===========================>               ] 2/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   289
  archiving [==========================================>] 3/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   290
  archiving [==========================================>] 3/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   291
                                                              
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   292
  archiving (foo) [                                     ] 0/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   293
  archiving (foo) [                                     ] 0/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   294
  archiving (foo) [===========>                         ] 1/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   295
  archiving (foo) [===========>                         ] 1/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   296
  archiving (foo) [=======================>             ] 2/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   297
  archiving (foo) [=======================>             ] 2/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   298
  archiving (foo) [====================================>] 3/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   299
  archiving (foo) [====================================>] 3/3
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   300
                                                              
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   301
  archiving (foo/bar) [                                 ] 0/1
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   302
  archiving (foo/bar) [                                 ] 0/1
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   303
  archiving (foo/bar) [================================>] 1/1
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   304
  archiving (foo/bar) [================================>] 1/1
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   305
                                                              \r (esc)
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   306
15286
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   307
Test archiving a revision that references a subrepo that is not yet
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   308
cloned:
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   309
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   310
  $ hg clone -U . ../empty
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   311
  $ cd ../empty
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   312
  $ hg archive --subrepos -r tip ../archive.tar.gz 2>&1 | $TESTDIR/filtercr.py
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   313
  
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   314
  archiving [                                           ] 0/3
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   315
  archiving [                                           ] 0/3
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   316
  archiving [=============>                             ] 1/3
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   317
  archiving [=============>                             ] 1/3
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   318
  archiving [===========================>               ] 2/3
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   319
  archiving [===========================>               ] 2/3
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   320
  archiving [==========================================>] 3/3
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   321
  archiving [==========================================>] 3/3
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   322
                                                              
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   323
  archiving (foo) [                                     ] 0/3
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   324
  archiving (foo) [                                     ] 0/3
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   325
  archiving (foo) [===========>                         ] 1/3
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   326
  archiving (foo) [===========>                         ] 1/3
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   327
  archiving (foo) [=======================>             ] 2/3
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   328
  archiving (foo) [=======================>             ] 2/3
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   329
  archiving (foo) [====================================>] 3/3
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   330
  archiving (foo) [====================================>] 3/3
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   331
                                                              
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   332
  archiving (foo/bar) [                                 ] 0/1
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   333
  archiving (foo/bar) [                                 ] 0/1
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   334
  archiving (foo/bar) [================================>] 1/1
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   335
  archiving (foo/bar) [================================>] 1/1
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   336
                                                              
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   337
  cloning subrepo foo from $TESTTMP/repo/foo
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   338
  cloning subrepo foo/bar from $TESTTMP/repo/foo/bar
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   339
  
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   340
The newly cloned subrepos contain no working copy:
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   341
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   342
  $ hg -R foo summary
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   343
  parent: -1:000000000000  (no revision checked out)
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   344
  branch: default
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   345
  commit: (clean)
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   346
  update: 4 new changesets (update)
4be845e3932c subrepo: pull revisions on demand when archiving hg subrepos
Martin Geisler <mg@aragost.com>
parents: 14281
diff changeset
   347
13144
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   348
Disable progress extension and cleanup:
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   349
aae2d5cbde64 subrepo: add progress bar support to archive
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
   350
  $ mv $HGRCPATH.no-progress $HGRCPATH
12323
f00953d9533c subrepo: add support for 'hg archive'
Martin Geisler <mg@aragost.com>
parents: 12316
diff changeset
   351
15287
b3e19c355ca7 subrepo: abort in hgsubrepo._get if the destination is obstructed
Martin Geisler <mg@aragost.com>
parents: 15286
diff changeset
   352
Test archiving when there is a directory in the way for a subrepo
b3e19c355ca7 subrepo: abort in hgsubrepo._get if the destination is obstructed
Martin Geisler <mg@aragost.com>
parents: 15286
diff changeset
   353
created by archive:
b3e19c355ca7 subrepo: abort in hgsubrepo._get if the destination is obstructed
Martin Geisler <mg@aragost.com>
parents: 15286
diff changeset
   354
b3e19c355ca7 subrepo: abort in hgsubrepo._get if the destination is obstructed
Martin Geisler <mg@aragost.com>
parents: 15286
diff changeset
   355
  $ hg clone -U . ../almost-empty
b3e19c355ca7 subrepo: abort in hgsubrepo._get if the destination is obstructed
Martin Geisler <mg@aragost.com>
parents: 15286
diff changeset
   356
  $ cd ../almost-empty
b3e19c355ca7 subrepo: abort in hgsubrepo._get if the destination is obstructed
Martin Geisler <mg@aragost.com>
parents: 15286
diff changeset
   357
  $ mkdir foo
b3e19c355ca7 subrepo: abort in hgsubrepo._get if the destination is obstructed
Martin Geisler <mg@aragost.com>
parents: 15286
diff changeset
   358
  $ echo f > foo/f
b3e19c355ca7 subrepo: abort in hgsubrepo._get if the destination is obstructed
Martin Geisler <mg@aragost.com>
parents: 15286
diff changeset
   359
  $ hg archive --subrepos -r tip archive
b3e19c355ca7 subrepo: abort in hgsubrepo._get if the destination is obstructed
Martin Geisler <mg@aragost.com>
parents: 15286
diff changeset
   360
  cloning subrepo foo from $TESTTMP/empty/foo
b3e19c355ca7 subrepo: abort in hgsubrepo._get if the destination is obstructed
Martin Geisler <mg@aragost.com>
parents: 15286
diff changeset
   361
  abort: destination '$TESTTMP/almost-empty/foo' is not empty
b3e19c355ca7 subrepo: abort in hgsubrepo._get if the destination is obstructed
Martin Geisler <mg@aragost.com>
parents: 15286
diff changeset
   362
  [255]
b3e19c355ca7 subrepo: abort in hgsubrepo._get if the destination is obstructed
Martin Geisler <mg@aragost.com>
parents: 15286
diff changeset
   363
12272
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   364
Clone and test outgoing:
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   365
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   366
  $ cd ..
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   367
  $ hg clone repo repo2
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   368
  updating to branch default
14281
ccb7240acf32 subrepo: create subrepos using clone instead of pull
Martin Geisler <mg@aragost.com>
parents: 13343
diff changeset
   369
  cloning subrepo foo from $TESTTMP/repo/foo
ccb7240acf32 subrepo: create subrepos using clone instead of pull
Martin Geisler <mg@aragost.com>
parents: 13343
diff changeset
   370
  cloning subrepo foo/bar from $TESTTMP/repo/foo/bar
12272
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   371
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   372
  $ cd repo2
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   373
  $ hg outgoing -S
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12591
diff changeset
   374
  comparing with $TESTTMP/repo
12272
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   375
  searching for changes
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   376
  no changes found
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12591
diff changeset
   377
  comparing with $TESTTMP/repo/foo
12272
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   378
  searching for changes
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   379
  no changes found
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12591
diff changeset
   380
  comparing with $TESTTMP/repo/foo/bar
12400
40852b4b910c incoming/outgoing: Fix recursion on sub repositories
Erik Zielke <ez@aragost.com>
parents: 12376
diff changeset
   381
  searching for changes
40852b4b910c incoming/outgoing: Fix recursion on sub repositories
Erik Zielke <ez@aragost.com>
parents: 12376
diff changeset
   382
  no changes found
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12275
diff changeset
   383
  [1]
12272
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   384
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   385
Make nested change:
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   386
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   387
  $ echo y4 >> foo/y.txt
12588
41fa32a6b6f8 test-subrepo-recursion: deleted default arguments
Erik Zielke <ez@aragost.com>
parents: 12587
diff changeset
   388
  $ hg diff --nodates -S
12272
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   389
  diff -r 65903cebad86 foo/y.txt
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   390
  --- a/foo/y.txt
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   391
  +++ b/foo/y.txt
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   392
  @@ -1,3 +1,4 @@
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   393
   y1
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   394
   y2
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   395
   y3
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   396
  +y4
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   397
  $ hg commit -m 3-4-2
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   398
  committing subrepository foo
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   399
  $ hg outgoing -S
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12591
diff changeset
   400
  comparing with $TESTTMP/repo
12272
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   401
  searching for changes
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   402
  changeset:   3:2655b8ecc4ee
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   403
  tag:         tip
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   404
  user:        test
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   405
  date:        Thu Jan 01 00:00:00 1970 +0000
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   406
  summary:     3-4-2
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   407
  
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12591
diff changeset
   408
  comparing with $TESTTMP/repo/foo
12272
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   409
  searching for changes
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   410
  changeset:   4:e96193d6cb36
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   411
  tag:         tip
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   412
  user:        test
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   413
  date:        Thu Jan 01 00:00:00 1970 +0000
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   414
  summary:     3-4-2
42ecd56399d7 outgoing: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12270
diff changeset
   415
  
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12591
diff changeset
   416
  comparing with $TESTTMP/repo/foo/bar
12400
40852b4b910c incoming/outgoing: Fix recursion on sub repositories
Erik Zielke <ez@aragost.com>
parents: 12376
diff changeset
   417
  searching for changes
40852b4b910c incoming/outgoing: Fix recursion on sub repositories
Erik Zielke <ez@aragost.com>
parents: 12376
diff changeset
   418
  no changes found
12274
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   419
12588
41fa32a6b6f8 test-subrepo-recursion: deleted default arguments
Erik Zielke <ez@aragost.com>
parents: 12587
diff changeset
   420
12274
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   421
Switch to original repo and setup default path:
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   422
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   423
  $ cd ../repo
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   424
  $ echo '[paths]' >> .hg/hgrc
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   425
  $ echo 'default = ../repo2' >> .hg/hgrc
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   426
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   427
Test incoming:
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   428
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   429
  $ hg incoming -S
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12591
diff changeset
   430
  comparing with $TESTTMP/repo2
12274
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   431
  searching for changes
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   432
  changeset:   3:2655b8ecc4ee
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   433
  tag:         tip
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   434
  user:        test
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   435
  date:        Thu Jan 01 00:00:00 1970 +0000
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   436
  summary:     3-4-2
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   437
  
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12591
diff changeset
   438
  comparing with $TESTTMP/repo2/foo
12274
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   439
  searching for changes
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   440
  changeset:   4:e96193d6cb36
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   441
  tag:         tip
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   442
  user:        test
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   443
  date:        Thu Jan 01 00:00:00 1970 +0000
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   444
  summary:     3-4-2
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   445
  
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12591
diff changeset
   446
  comparing with $TESTTMP/repo2/foo/bar
12400
40852b4b910c incoming/outgoing: Fix recursion on sub repositories
Erik Zielke <ez@aragost.com>
parents: 12376
diff changeset
   447
  searching for changes
40852b4b910c incoming/outgoing: Fix recursion on sub repositories
Erik Zielke <ez@aragost.com>
parents: 12376
diff changeset
   448
  no changes found
40852b4b910c incoming/outgoing: Fix recursion on sub repositories
Erik Zielke <ez@aragost.com>
parents: 12376
diff changeset
   449
12274
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   450
  $ hg incoming -S --bundle incoming.hg
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   451
  abort: cannot combine --bundle and --subrepos
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12275
diff changeset
   452
  [255]
12274
c02e1ed3d407 incoming: recurse into subrepositories with --subrepos/-S flag
Martin Geisler <mg@lazybytes.net>
parents: 12272
diff changeset
   453
12275
88a42bf5fa46 test-subrepo-recursion: test missing subrepo
Martin Geisler <mg@lazybytes.net>
parents: 12274
diff changeset
   454
Test missing subrepo:
88a42bf5fa46 test-subrepo-recursion: test missing subrepo
Martin Geisler <mg@lazybytes.net>
parents: 12274
diff changeset
   455
88a42bf5fa46 test-subrepo-recursion: test missing subrepo
Martin Geisler <mg@lazybytes.net>
parents: 12274
diff changeset
   456
  $ rm -r foo
12588
41fa32a6b6f8 test-subrepo-recursion: deleted default arguments
Erik Zielke <ez@aragost.com>
parents: 12587
diff changeset
   457
  $ hg status -S
12503
b4711585a455 subrepo: improve lookup error messages
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 12400
diff changeset
   458
  warning: error "unknown revision '65903cebad86f1a84bd4f1134f62fa7dcb7a1c98'" in subrepository "foo"
13339
22167be007ed subrepo: fix pruning of subrepo filenames in dirstate (issue2619)
trbs <trbs@trbs.net>
parents: 12640
diff changeset
   459
22167be007ed subrepo: fix pruning of subrepo filenames in dirstate (issue2619)
trbs <trbs@trbs.net>
parents: 12640
diff changeset
   460
Issue2619: IndexError: list index out of range on hg add with subrepos
22167be007ed subrepo: fix pruning of subrepo filenames in dirstate (issue2619)
trbs <trbs@trbs.net>
parents: 12640
diff changeset
   461
The subrepo must sorts after the explicit filename.
22167be007ed subrepo: fix pruning of subrepo filenames in dirstate (issue2619)
trbs <trbs@trbs.net>
parents: 12640
diff changeset
   462
22167be007ed subrepo: fix pruning of subrepo filenames in dirstate (issue2619)
trbs <trbs@trbs.net>
parents: 12640
diff changeset
   463
  $ cd ..
22167be007ed subrepo: fix pruning of subrepo filenames in dirstate (issue2619)
trbs <trbs@trbs.net>
parents: 12640
diff changeset
   464
  $ hg init test
22167be007ed subrepo: fix pruning of subrepo filenames in dirstate (issue2619)
trbs <trbs@trbs.net>
parents: 12640
diff changeset
   465
  $ cd test
22167be007ed subrepo: fix pruning of subrepo filenames in dirstate (issue2619)
trbs <trbs@trbs.net>
parents: 12640
diff changeset
   466
  $ hg init x
22167be007ed subrepo: fix pruning of subrepo filenames in dirstate (issue2619)
trbs <trbs@trbs.net>
parents: 12640
diff changeset
   467
  $ echo "x = x" >> .hgsub
22167be007ed subrepo: fix pruning of subrepo filenames in dirstate (issue2619)
trbs <trbs@trbs.net>
parents: 12640
diff changeset
   468
  $ hg add .hgsub
22167be007ed subrepo: fix pruning of subrepo filenames in dirstate (issue2619)
trbs <trbs@trbs.net>
parents: 12640
diff changeset
   469
  $ touch a x/a
22167be007ed subrepo: fix pruning of subrepo filenames in dirstate (issue2619)
trbs <trbs@trbs.net>
parents: 12640
diff changeset
   470
  $ hg add a x/a