tests/test-subrepo-deep-nested-change.t
author Matt Mackall <mpm@selenic.com>
Tue, 19 May 2015 07:17:57 -0500
changeset 25195 472a685a4961
parent 25122 755d23a49170
parent 25194 ef4538ba67ef
child 25228 63a57a2727b6
permissions -rw-r--r--
merge with stable
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
11913
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
     1
Preparing the subrepository 'sub2'
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
     2
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
     3
  $ hg init sub2
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
     4
  $ echo sub2 > sub2/sub2
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
     5
  $ hg add -R sub2
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 15321
diff changeset
     6
  adding sub2/sub2 (glob)
11913
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
     7
  $ hg commit -R sub2 -m "sub2 import"
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
     8
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
     9
Preparing the 'sub1' repo which depends on the subrepo 'sub2'
11110
22f5ad0b5857 subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff changeset
    10
11913
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    11
  $ hg init sub1
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    12
  $ echo sub1 > sub1/sub1
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    13
  $ echo "sub2 = ../sub2" > sub1/.hgsub
12107
497c78760b37 tests: use regular expression instead of sed in test-subrepo-deep-nested-change
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11913
diff changeset
    14
  $ hg clone sub2 sub1/sub2
11913
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    15
  updating to branch default
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    16
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    17
  $ hg add -R sub1
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 15321
diff changeset
    18
  adding sub1/.hgsub (glob)
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 15321
diff changeset
    19
  adding sub1/sub1 (glob)
11913
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    20
  $ hg commit -R sub1 -m "sub1 import"
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    21
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    22
Preparing the 'main' repo which depends on the subrepo 'sub1'
11110
22f5ad0b5857 subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff changeset
    23
11913
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    24
  $ hg init main
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    25
  $ echo main > main/main
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    26
  $ echo "sub1 = ../sub1" > main/.hgsub
12107
497c78760b37 tests: use regular expression instead of sed in test-subrepo-deep-nested-change
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11913
diff changeset
    27
  $ hg clone sub1 main/sub1
11913
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    28
  updating to branch default
14281
ccb7240acf32 subrepo: create subrepos using clone instead of pull
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
    29
  cloning subrepo sub2 from $TESTTMP/sub2
11913
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    30
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    31
  $ hg add -R main
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 15321
diff changeset
    32
  adding main/.hgsub (glob)
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 15321
diff changeset
    33
  adding main/main (glob)
11913
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    34
  $ hg commit -R main -m "main import"
11110
22f5ad0b5857 subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff changeset
    35
11913
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    36
Cleaning both repositories, just as a clone -U
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    37
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    38
  $ hg up -C -R sub2 null
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    39
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    40
  $ hg up -C -R sub1 null
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    41
  0 files updated, 0 files merged, 3 files removed, 0 files unresolved
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    42
  $ hg up -C -R main null
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    43
  0 files updated, 0 files merged, 3 files removed, 0 files unresolved
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    44
  $ rm -rf main/sub1
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    45
  $ rm -rf sub1/sub2
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    46
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    47
Clone main
11110
22f5ad0b5857 subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff changeset
    48
24029
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
    49
  $ hg --config extensions.largefiles= clone main cloned
11913
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    50
  updating to branch default
14281
ccb7240acf32 subrepo: create subrepos using clone instead of pull
Martin Geisler <mg@aragost.com>
parents: 12640
diff changeset
    51
  cloning subrepo sub1 from $TESTTMP/sub1
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 15321
diff changeset
    52
  cloning subrepo sub1/sub2 from $TESTTMP/sub2 (glob)
11913
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    53
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
11110
22f5ad0b5857 subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff changeset
    54
24029
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
    55
Largefiles is NOT enabled in the clone if the source repo doesn't require it
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
    56
  $ cat cloned/.hg/hgrc
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
    57
  # example repository config (see "hg help config" for more info)
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
    58
  [paths]
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
    59
  default = $TESTTMP/main (glob)
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
    60
  
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
    61
  # path aliases to other clones of this repo in URLs or filesystem paths
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
    62
  # (see "hg help config.paths" for more info)
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
    63
  #
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
    64
  # default-push = ssh://jdoe@example.net/hg/jdoes-fork
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
    65
  # my-fork      = ssh://jdoe@example.net/hg/jdoes-fork
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
    66
  # my-clone     = /home/jdoe/jdoes-clone
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
    67
  
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
    68
  [ui]
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
    69
  # name and email (local to this repository, optional), e.g.
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
    70
  # username = Jane Doe <jdoe@example.com>
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
    71
11913
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    72
Checking cloned repo ids
11110
22f5ad0b5857 subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff changeset
    73
11913
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    74
  $ printf "cloned " ; hg id -R cloned
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    75
  cloned 7f491f53a367 tip
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    76
  $ printf "cloned/sub1 " ; hg id -R cloned/sub1
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    77
  cloned/sub1 fc3b4ce2696f tip
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    78
  $ printf "cloned/sub1/sub2 " ; hg id -R cloned/sub1/sub2
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    79
  cloned/sub1/sub2 c57a0840e3ba tip
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    80
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    81
debugsub output for main and sub1
11110
22f5ad0b5857 subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff changeset
    82
11913
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    83
  $ hg debugsub -R cloned
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    84
  path sub1
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    85
   source   ../sub1
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    86
   revision fc3b4ce2696f7741438c79207583768f2ce6b0dd
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    87
  $ hg debugsub -R cloned/sub1
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    88
  path sub2
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    89
   source   ../sub2
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    90
   revision c57a0840e3badd667ef3c3ef65471609acb2ba3c
11110
22f5ad0b5857 subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff changeset
    91
11913
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    92
Modifying deeply nested 'sub2'
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    93
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    94
  $ echo modified > cloned/sub1/sub2/sub2
15321
e174353e8cda subrepos: abort commit by default if a subrepo is dirty (BC)
Martin Geisler <mg@lazybytes.net>
parents: 14281
diff changeset
    95
  $ hg commit --subrepos -m "deep nested modif should trigger a commit" -R cloned
11913
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    96
  committing subrepository sub1
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 15321
diff changeset
    97
  committing subrepository sub1/sub2 (glob)
11913
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    98
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
    99
Checking modified node ids
11110
22f5ad0b5857 subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff changeset
   100
11913
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
   101
  $ printf "cloned " ; hg id -R cloned
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
   102
  cloned ffe6649062fe tip
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
   103
  $ printf "cloned/sub1 " ; hg id -R cloned/sub1
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
   104
  cloned/sub1 2ecb03bf44a9 tip
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
   105
  $ printf "cloned/sub1/sub2 " ; hg id -R cloned/sub1/sub2
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
   106
  cloned/sub1/sub2 53dd3430bcaf tip
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
   107
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
   108
debugsub output for main and sub1
11110
22f5ad0b5857 subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff changeset
   109
11913
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
   110
  $ hg debugsub -R cloned
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
   111
  path sub1
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
   112
   source   ../sub1
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
   113
   revision 2ecb03bf44a94e749e8669481dd9069526ce7cb9
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
   114
  $ hg debugsub -R cloned/sub1
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
   115
  path sub2
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
   116
   source   ../sub2
628cdd158ec0 tests: unify test-subrepo-deep-nested-change
Martin Geisler <mg@lazybytes.net>
parents: 11110
diff changeset
   117
   revision 53dd3430bcaf5ab4a7c48262bcad6d441f510487
17105
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   118
17108
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   119
Check that deep archiving works
17346
2944a6d35158 check-code: fix check for trailing whitespace on empty lines
Mads Kiilerich <mads@kiilerich.com>
parents: 17113
diff changeset
   120
17108
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   121
  $ cd cloned
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   122
  $ echo 'test' > sub1/sub2/test.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   123
  $ hg --config extensions.largefiles=! add sub1/sub2/test.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   124
  $ mkdir sub1/sub2/folder
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   125
  $ echo 'subfolder' > sub1/sub2/folder/test.txt
23537
f1b06a8aad42 commit: propagate --addremove to subrepos if -S is specified (issue3759)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23327
diff changeset
   126
  $ hg ci -ASm "add test.txt"
23686
164915e8ef7b narrowmatcher: propagate the rel() method
Matt Harbison <matt_harbison@yahoo.com>
parents: 23540
diff changeset
   127
  adding sub1/sub2/folder/test.txt
17108
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   128
  committing subrepository sub1
17112
f690402e80fb tests: add '(glob)' for Windows paths in test-subrepo-deep-nested-change.t
Mads Kiilerich <mads@kiilerich.com>
parents: 17108
diff changeset
   129
  committing subrepository sub1/sub2 (glob)
23325
4165cfd67519 remove: recurse into subrepositories with --subrepos/-S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 17346
diff changeset
   130
4165cfd67519 remove: recurse into subrepositories with --subrepos/-S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 17346
diff changeset
   131
.. but first take a detour through some deep removal testing
4165cfd67519 remove: recurse into subrepositories with --subrepos/-S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 17346
diff changeset
   132
23327
bd296bb4b5c8 remove: avoid a bogus warning about no tracked files when removing '.'
Matt Harbison <matt_harbison@yahoo.com>
parents: 23326
diff changeset
   133
  $ hg remove -S -I 're:.*.txt' .
23325
4165cfd67519 remove: recurse into subrepositories with --subrepos/-S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 17346
diff changeset
   134
  removing sub1/sub2/folder/test.txt (glob)
4165cfd67519 remove: recurse into subrepositories with --subrepos/-S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 17346
diff changeset
   135
  removing sub1/sub2/test.txt (glob)
4165cfd67519 remove: recurse into subrepositories with --subrepos/-S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 17346
diff changeset
   136
  $ hg status -S
4165cfd67519 remove: recurse into subrepositories with --subrepos/-S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 17346
diff changeset
   137
  R sub1/sub2/folder/test.txt
4165cfd67519 remove: recurse into subrepositories with --subrepos/-S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 17346
diff changeset
   138
  R sub1/sub2/test.txt
4165cfd67519 remove: recurse into subrepositories with --subrepos/-S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 17346
diff changeset
   139
  $ hg update -Cq
23326
f6b8d23492e5 remove: support remove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23325
diff changeset
   140
  $ hg remove -I 're:.*.txt' sub1
f6b8d23492e5 remove: support remove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23325
diff changeset
   141
  $ hg status -S
f6b8d23492e5 remove: support remove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23325
diff changeset
   142
  $ hg remove sub1/sub2/folder/test.txt
f6b8d23492e5 remove: support remove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23325
diff changeset
   143
  $ hg remove sub1/.hgsubstate
24645
b39afa36006a subrepo: precisely identify the missing subrepo spec file
Matt Harbison <matt_harbison@yahoo.com>
parents: 24446
diff changeset
   144
  $ mv sub1/.hgsub sub1/x.hgsub
23326
f6b8d23492e5 remove: support remove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23325
diff changeset
   145
  $ hg status -S
24645
b39afa36006a subrepo: precisely identify the missing subrepo spec file
Matt Harbison <matt_harbison@yahoo.com>
parents: 24446
diff changeset
   146
  warning: subrepo spec file 'sub1/.hgsub' not found (glob)
23326
f6b8d23492e5 remove: support remove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23325
diff changeset
   147
  R sub1/.hgsubstate
f6b8d23492e5 remove: support remove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23325
diff changeset
   148
  R sub1/sub2/folder/test.txt
24645
b39afa36006a subrepo: precisely identify the missing subrepo spec file
Matt Harbison <matt_harbison@yahoo.com>
parents: 24446
diff changeset
   149
  ! sub1/.hgsub
b39afa36006a subrepo: precisely identify the missing subrepo spec file
Matt Harbison <matt_harbison@yahoo.com>
parents: 24446
diff changeset
   150
  ? sub1/x.hgsub
b39afa36006a subrepo: precisely identify the missing subrepo spec file
Matt Harbison <matt_harbison@yahoo.com>
parents: 24446
diff changeset
   151
  $ mv sub1/x.hgsub sub1/.hgsub
23326
f6b8d23492e5 remove: support remove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23325
diff changeset
   152
  $ hg update -Cq
23538
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   153
  $ touch sub1/foo
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   154
  $ hg forget sub1/sub2/folder/test.txt
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   155
  $ rm sub1/sub2/test.txt
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   156
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   157
Test relative path printing + subrepos
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   158
  $ mkdir -p foo/bar
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   159
  $ cd foo
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   160
  $ touch bar/abc
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   161
  $ hg addremove -S ..
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   162
  adding ../sub1/sub2/folder/test.txt (glob)
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   163
  removing ../sub1/sub2/test.txt (glob)
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   164
  adding ../sub1/foo (glob)
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   165
  adding bar/abc (glob)
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   166
  $ cd ..
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   167
  $ hg status -S
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   168
  A foo/bar/abc
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   169
  A sub1/foo
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   170
  R sub1/sub2/test.txt
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   171
  $ hg update -Cq
23539
cb42050f2dad addremove: support addremove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23538
diff changeset
   172
  $ touch sub1/sub2/folder/bar
cb42050f2dad addremove: support addremove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23538
diff changeset
   173
  $ hg addremove sub1/sub2
cb42050f2dad addremove: support addremove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23538
diff changeset
   174
  adding sub1/sub2/folder/bar (glob)
cb42050f2dad addremove: support addremove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23538
diff changeset
   175
  $ hg status -S
cb42050f2dad addremove: support addremove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23538
diff changeset
   176
  A sub1/sub2/folder/bar
cb42050f2dad addremove: support addremove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23538
diff changeset
   177
  ? foo/bar/abc
cb42050f2dad addremove: support addremove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23538
diff changeset
   178
  ? sub1/foo
cb42050f2dad addremove: support addremove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23538
diff changeset
   179
  $ hg update -Cq
23540
f274d27f1994 addremove: automatically process a subrepository's subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23539
diff changeset
   180
  $ hg addremove sub1
f274d27f1994 addremove: automatically process a subrepository's subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23539
diff changeset
   181
  adding sub1/sub2/folder/bar (glob)
f274d27f1994 addremove: automatically process a subrepository's subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23539
diff changeset
   182
  adding sub1/foo (glob)
f274d27f1994 addremove: automatically process a subrepository's subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23539
diff changeset
   183
  $ hg update -Cq
23537
f1b06a8aad42 commit: propagate --addremove to subrepos if -S is specified (issue3759)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23327
diff changeset
   184
  $ rm sub1/sub2/folder/test.txt
f1b06a8aad42 commit: propagate --addremove to subrepos if -S is specified (issue3759)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23327
diff changeset
   185
  $ rm sub1/sub2/test.txt
f1b06a8aad42 commit: propagate --addremove to subrepos if -S is specified (issue3759)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23327
diff changeset
   186
  $ hg ci -ASm "remove test.txt"
23686
164915e8ef7b narrowmatcher: propagate the rel() method
Matt Harbison <matt_harbison@yahoo.com>
parents: 23540
diff changeset
   187
  adding sub1/sub2/folder/bar
164915e8ef7b narrowmatcher: propagate the rel() method
Matt Harbison <matt_harbison@yahoo.com>
parents: 23540
diff changeset
   188
  removing sub1/sub2/folder/test.txt
164915e8ef7b narrowmatcher: propagate the rel() method
Matt Harbison <matt_harbison@yahoo.com>
parents: 23540
diff changeset
   189
  removing sub1/sub2/test.txt
164915e8ef7b narrowmatcher: propagate the rel() method
Matt Harbison <matt_harbison@yahoo.com>
parents: 23540
diff changeset
   190
  adding sub1/foo
23538
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   191
  adding foo/bar/abc
23537
f1b06a8aad42 commit: propagate --addremove to subrepos if -S is specified (issue3759)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23327
diff changeset
   192
  committing subrepository sub1
f1b06a8aad42 commit: propagate --addremove to subrepos if -S is specified (issue3759)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23327
diff changeset
   193
  committing subrepository sub1/sub2 (glob)
24413
a8595176dd64 subrepo: add basic support to hgsubrepo for the files command
Matt Harbison <matt_harbison@yahoo.com>
parents: 24230
diff changeset
   194
a8595176dd64 subrepo: add basic support to hgsubrepo for the files command
Matt Harbison <matt_harbison@yahoo.com>
parents: 24230
diff changeset
   195
  $ hg forget sub1/sub2/sub2
a8595176dd64 subrepo: add basic support to hgsubrepo for the files command
Matt Harbison <matt_harbison@yahoo.com>
parents: 24230
diff changeset
   196
  $ echo x > sub1/sub2/x.txt
a8595176dd64 subrepo: add basic support to hgsubrepo for the files command
Matt Harbison <matt_harbison@yahoo.com>
parents: 24230
diff changeset
   197
  $ hg add sub1/sub2/x.txt
a8595176dd64 subrepo: add basic support to hgsubrepo for the files command
Matt Harbison <matt_harbison@yahoo.com>
parents: 24230
diff changeset
   198
a8595176dd64 subrepo: add basic support to hgsubrepo for the files command
Matt Harbison <matt_harbison@yahoo.com>
parents: 24230
diff changeset
   199
Files sees uncommitted adds and removes in subrepos
a8595176dd64 subrepo: add basic support to hgsubrepo for the files command
Matt Harbison <matt_harbison@yahoo.com>
parents: 24230
diff changeset
   200
  $ hg files -S
a8595176dd64 subrepo: add basic support to hgsubrepo for the files command
Matt Harbison <matt_harbison@yahoo.com>
parents: 24230
diff changeset
   201
  .hgsub
a8595176dd64 subrepo: add basic support to hgsubrepo for the files command
Matt Harbison <matt_harbison@yahoo.com>
parents: 24230
diff changeset
   202
  .hgsubstate
a8595176dd64 subrepo: add basic support to hgsubrepo for the files command
Matt Harbison <matt_harbison@yahoo.com>
parents: 24230
diff changeset
   203
  foo/bar/abc (glob)
a8595176dd64 subrepo: add basic support to hgsubrepo for the files command
Matt Harbison <matt_harbison@yahoo.com>
parents: 24230
diff changeset
   204
  main
a8595176dd64 subrepo: add basic support to hgsubrepo for the files command
Matt Harbison <matt_harbison@yahoo.com>
parents: 24230
diff changeset
   205
  sub1/.hgsub (glob)
a8595176dd64 subrepo: add basic support to hgsubrepo for the files command
Matt Harbison <matt_harbison@yahoo.com>
parents: 24230
diff changeset
   206
  sub1/.hgsubstate (glob)
a8595176dd64 subrepo: add basic support to hgsubrepo for the files command
Matt Harbison <matt_harbison@yahoo.com>
parents: 24230
diff changeset
   207
  sub1/foo (glob)
a8595176dd64 subrepo: add basic support to hgsubrepo for the files command
Matt Harbison <matt_harbison@yahoo.com>
parents: 24230
diff changeset
   208
  sub1/sub1 (glob)
a8595176dd64 subrepo: add basic support to hgsubrepo for the files command
Matt Harbison <matt_harbison@yahoo.com>
parents: 24230
diff changeset
   209
  sub1/sub2/folder/bar (glob)
a8595176dd64 subrepo: add basic support to hgsubrepo for the files command
Matt Harbison <matt_harbison@yahoo.com>
parents: 24230
diff changeset
   210
  sub1/sub2/x.txt (glob)
a8595176dd64 subrepo: add basic support to hgsubrepo for the files command
Matt Harbison <matt_harbison@yahoo.com>
parents: 24230
diff changeset
   211
25122
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   212
  $ hg files -S "set:eol('dos') or eol('unix') or size('<= 0')"
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   213
  .hgsub
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   214
  .hgsubstate
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   215
  foo/bar/abc (glob)
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   216
  main
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   217
  sub1/.hgsub (glob)
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   218
  sub1/.hgsubstate (glob)
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   219
  sub1/foo (glob)
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   220
  sub1/sub1 (glob)
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   221
  sub1/sub2/folder/bar (glob)
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   222
  sub1/sub2/x.txt (glob)
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   223
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   224
  $ hg files -r '.^' -S "set:eol('dos') or eol('unix')"
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   225
  .hgsub
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   226
  .hgsubstate
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   227
  main
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   228
  sub1/.hgsub (glob)
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   229
  sub1/.hgsubstate (glob)
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   230
  sub1/sub1 (glob)
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   231
  sub1/sub2/folder/test.txt (glob)
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   232
  sub1/sub2/sub2 (glob)
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   233
  sub1/sub2/test.txt (glob)
755d23a49170 match: resolve filesets in subrepos for commands given the '-S' argument
Matt Harbison <matt_harbison@yahoo.com>
parents: 24953
diff changeset
   234
25193
ccb1623266eb context: don't complain about a matcher's subrepo paths in changectx.walk()
Matt Harbison <matt_harbison@yahoo.com>
parents: 24924
diff changeset
   235
  $ hg files -S -r '.^' sub1/sub2/folder
ccb1623266eb context: don't complain about a matcher's subrepo paths in changectx.walk()
Matt Harbison <matt_harbison@yahoo.com>
parents: 24924
diff changeset
   236
  sub1/sub2/folder/test.txt (glob)
ccb1623266eb context: don't complain about a matcher's subrepo paths in changectx.walk()
Matt Harbison <matt_harbison@yahoo.com>
parents: 24924
diff changeset
   237
ccb1623266eb context: don't complain about a matcher's subrepo paths in changectx.walk()
Matt Harbison <matt_harbison@yahoo.com>
parents: 24924
diff changeset
   238
  $ hg files -S -r '.^' sub1/sub2/missing
ccb1623266eb context: don't complain about a matcher's subrepo paths in changectx.walk()
Matt Harbison <matt_harbison@yahoo.com>
parents: 24924
diff changeset
   239
  sub1/sub2/missing: no such file in rev 78026e779ea6 (glob)
ccb1623266eb context: don't complain about a matcher's subrepo paths in changectx.walk()
Matt Harbison <matt_harbison@yahoo.com>
parents: 24924
diff changeset
   240
  [1]
ccb1623266eb context: don't complain about a matcher's subrepo paths in changectx.walk()
Matt Harbison <matt_harbison@yahoo.com>
parents: 24924
diff changeset
   241
25194
ef4538ba67ef match: explicitly naming a subrepo implies always() for the submatcher
Matt Harbison <matt_harbison@yahoo.com>
parents: 25193
diff changeset
   242
  $ hg files -S -r '.^' sub1/
ef4538ba67ef match: explicitly naming a subrepo implies always() for the submatcher
Matt Harbison <matt_harbison@yahoo.com>
parents: 25193
diff changeset
   243
  sub1/.hgsub (glob)
ef4538ba67ef match: explicitly naming a subrepo implies always() for the submatcher
Matt Harbison <matt_harbison@yahoo.com>
parents: 25193
diff changeset
   244
  sub1/.hgsubstate (glob)
ef4538ba67ef match: explicitly naming a subrepo implies always() for the submatcher
Matt Harbison <matt_harbison@yahoo.com>
parents: 25193
diff changeset
   245
  sub1/sub1 (glob)
ef4538ba67ef match: explicitly naming a subrepo implies always() for the submatcher
Matt Harbison <matt_harbison@yahoo.com>
parents: 25193
diff changeset
   246
  sub1/sub2/folder/test.txt (glob)
ef4538ba67ef match: explicitly naming a subrepo implies always() for the submatcher
Matt Harbison <matt_harbison@yahoo.com>
parents: 25193
diff changeset
   247
  sub1/sub2/sub2 (glob)
ef4538ba67ef match: explicitly naming a subrepo implies always() for the submatcher
Matt Harbison <matt_harbison@yahoo.com>
parents: 25193
diff changeset
   248
  sub1/sub2/test.txt (glob)
ef4538ba67ef match: explicitly naming a subrepo implies always() for the submatcher
Matt Harbison <matt_harbison@yahoo.com>
parents: 25193
diff changeset
   249
ef4538ba67ef match: explicitly naming a subrepo implies always() for the submatcher
Matt Harbison <matt_harbison@yahoo.com>
parents: 25193
diff changeset
   250
  $ hg files -S -r '.^' sub1/sub2
ef4538ba67ef match: explicitly naming a subrepo implies always() for the submatcher
Matt Harbison <matt_harbison@yahoo.com>
parents: 25193
diff changeset
   251
  sub1/sub2/folder/test.txt (glob)
ef4538ba67ef match: explicitly naming a subrepo implies always() for the submatcher
Matt Harbison <matt_harbison@yahoo.com>
parents: 25193
diff changeset
   252
  sub1/sub2/sub2 (glob)
ef4538ba67ef match: explicitly naming a subrepo implies always() for the submatcher
Matt Harbison <matt_harbison@yahoo.com>
parents: 25193
diff changeset
   253
  sub1/sub2/test.txt (glob)
ef4538ba67ef match: explicitly naming a subrepo implies always() for the submatcher
Matt Harbison <matt_harbison@yahoo.com>
parents: 25193
diff changeset
   254
23537
f1b06a8aad42 commit: propagate --addremove to subrepos if -S is specified (issue3759)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23327
diff changeset
   255
  $ hg rollback -q
f1b06a8aad42 commit: propagate --addremove to subrepos if -S is specified (issue3759)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23327
diff changeset
   256
  $ hg up -Cq
23325
4165cfd67519 remove: recurse into subrepositories with --subrepos/-S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 17346
diff changeset
   257
17108
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   258
  $ hg --config extensions.largefiles=! archive -S ../archive_all
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   259
  $ find ../archive_all | sort
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   260
  ../archive_all
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   261
  ../archive_all/.hg_archival.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   262
  ../archive_all/.hgsub
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   263
  ../archive_all/.hgsubstate
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   264
  ../archive_all/main
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   265
  ../archive_all/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   266
  ../archive_all/sub1/.hgsub
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   267
  ../archive_all/sub1/.hgsubstate
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   268
  ../archive_all/sub1/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   269
  ../archive_all/sub1/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   270
  ../archive_all/sub1/sub2/folder
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   271
  ../archive_all/sub1/sub2/folder/test.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   272
  ../archive_all/sub1/sub2/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   273
  ../archive_all/sub1/sub2/test.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   274
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   275
Check that archive -X works in deep subrepos
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   276
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   277
  $ hg --config extensions.largefiles=! archive -S -X '**test*' ../archive_exclude
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   278
  $ find ../archive_exclude | sort
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   279
  ../archive_exclude
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   280
  ../archive_exclude/.hg_archival.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   281
  ../archive_exclude/.hgsub
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   282
  ../archive_exclude/.hgsubstate
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   283
  ../archive_exclude/main
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   284
  ../archive_exclude/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   285
  ../archive_exclude/sub1/.hgsub
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   286
  ../archive_exclude/sub1/.hgsubstate
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   287
  ../archive_exclude/sub1/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   288
  ../archive_exclude/sub1/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   289
  ../archive_exclude/sub1/sub2/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   290
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   291
  $ hg --config extensions.largefiles=! archive -S -I '**test*' ../archive_include
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   292
  $ find ../archive_include | sort
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   293
  ../archive_include
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   294
  ../archive_include/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   295
  ../archive_include/sub1/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   296
  ../archive_include/sub1/sub2/folder
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   297
  ../archive_include/sub1/sub2/folder/test.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   298
  ../archive_include/sub1/sub2/test.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   299
17105
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   300
Check that deep archive works with largefiles (which overrides hgsubrepo impl)
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   301
This also tests the repo.ui regression in 43fb170a23bd, and that lf subrepo
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   302
subrepos are archived properly.
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   303
Note that add --large through a subrepo currently adds the file as a normal file
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   304
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   305
  $ echo "large" > sub1/sub2/large.bin
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   306
  $ hg --config extensions.largefiles= add --large -R sub1/sub2 sub1/sub2/large.bin
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   307
  $ echo "large" > large.bin
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   308
  $ hg --config extensions.largefiles= add --large large.bin
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   309
  $ hg --config extensions.largefiles= ci -S -m "add large files"
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   310
  committing subrepository sub1
17112
f690402e80fb tests: add '(glob)' for Windows paths in test-subrepo-deep-nested-change.t
Mads Kiilerich <mads@kiilerich.com>
parents: 17108
diff changeset
   311
  committing subrepository sub1/sub2 (glob)
17105
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   312
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   313
  $ hg --config extensions.largefiles= archive -S ../archive_lf
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   314
  $ find ../archive_lf | sort
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   315
  ../archive_lf
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   316
  ../archive_lf/.hg_archival.txt
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   317
  ../archive_lf/.hgsub
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   318
  ../archive_lf/.hgsubstate
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   319
  ../archive_lf/large.bin
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   320
  ../archive_lf/main
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   321
  ../archive_lf/sub1
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   322
  ../archive_lf/sub1/.hgsub
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   323
  ../archive_lf/sub1/.hgsubstate
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   324
  ../archive_lf/sub1/sub1
17106
4d0e81dca75f largefiles: fix the directory structure when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 17105
diff changeset
   325
  ../archive_lf/sub1/sub2
17108
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   326
  ../archive_lf/sub1/sub2/folder
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   327
  ../archive_lf/sub1/sub2/folder/test.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   328
  ../archive_lf/sub1/sub2/large.bin
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   329
  ../archive_lf/sub1/sub2/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   330
  ../archive_lf/sub1/sub2/test.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   331
  $ rm -rf ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   332
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   333
Exclude large files from main and sub-sub repo
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   334
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   335
  $ hg --config extensions.largefiles= archive -S -X '**.bin' ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   336
  $ find ../archive_lf | sort
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   337
  ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   338
  ../archive_lf/.hg_archival.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   339
  ../archive_lf/.hgsub
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   340
  ../archive_lf/.hgsubstate
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   341
  ../archive_lf/main
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   342
  ../archive_lf/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   343
  ../archive_lf/sub1/.hgsub
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   344
  ../archive_lf/sub1/.hgsubstate
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   345
  ../archive_lf/sub1/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   346
  ../archive_lf/sub1/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   347
  ../archive_lf/sub1/sub2/folder
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   348
  ../archive_lf/sub1/sub2/folder/test.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   349
  ../archive_lf/sub1/sub2/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   350
  ../archive_lf/sub1/sub2/test.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   351
  $ rm -rf ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   352
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   353
Exclude normal files from main and sub-sub repo
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   354
24953
5115d03440f4 archive: drop the leading '.' path component from the prefix (issue4634)
Matt Harbison <matt_harbison@yahoo.com>
parents: 24924
diff changeset
   355
  $ hg --config extensions.largefiles= archive -S -X '**.txt' -p '.' ../archive_lf.tgz
24924
41cd8171e58f archive: always use portable path component separators with subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 24645
diff changeset
   356
  $ tar -tzf ../archive_lf.tgz | sort
24953
5115d03440f4 archive: drop the leading '.' path component from the prefix (issue4634)
Matt Harbison <matt_harbison@yahoo.com>
parents: 24924
diff changeset
   357
  .hgsub
5115d03440f4 archive: drop the leading '.' path component from the prefix (issue4634)
Matt Harbison <matt_harbison@yahoo.com>
parents: 24924
diff changeset
   358
  .hgsubstate
5115d03440f4 archive: drop the leading '.' path component from the prefix (issue4634)
Matt Harbison <matt_harbison@yahoo.com>
parents: 24924
diff changeset
   359
  large.bin
5115d03440f4 archive: drop the leading '.' path component from the prefix (issue4634)
Matt Harbison <matt_harbison@yahoo.com>
parents: 24924
diff changeset
   360
  main
5115d03440f4 archive: drop the leading '.' path component from the prefix (issue4634)
Matt Harbison <matt_harbison@yahoo.com>
parents: 24924
diff changeset
   361
  sub1/.hgsub
5115d03440f4 archive: drop the leading '.' path component from the prefix (issue4634)
Matt Harbison <matt_harbison@yahoo.com>
parents: 24924
diff changeset
   362
  sub1/.hgsubstate
5115d03440f4 archive: drop the leading '.' path component from the prefix (issue4634)
Matt Harbison <matt_harbison@yahoo.com>
parents: 24924
diff changeset
   363
  sub1/sub1
5115d03440f4 archive: drop the leading '.' path component from the prefix (issue4634)
Matt Harbison <matt_harbison@yahoo.com>
parents: 24924
diff changeset
   364
  sub1/sub2/large.bin
5115d03440f4 archive: drop the leading '.' path component from the prefix (issue4634)
Matt Harbison <matt_harbison@yahoo.com>
parents: 24924
diff changeset
   365
  sub1/sub2/sub2
17108
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   366
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   367
Include normal files from within a largefiles subrepo
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   368
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   369
  $ hg --config extensions.largefiles= archive -S -I '**.txt' ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   370
  $ find ../archive_lf | sort
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   371
  ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   372
  ../archive_lf/.hg_archival.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   373
  ../archive_lf/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   374
  ../archive_lf/sub1/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   375
  ../archive_lf/sub1/sub2/folder
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   376
  ../archive_lf/sub1/sub2/folder/test.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   377
  ../archive_lf/sub1/sub2/test.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   378
  $ rm -rf ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   379
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   380
Include large files from within a largefiles subrepo
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   381
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   382
  $ hg --config extensions.largefiles= archive -S -I '**.bin' ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   383
  $ find ../archive_lf | sort
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   384
  ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   385
  ../archive_lf/large.bin
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   386
  ../archive_lf/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   387
  ../archive_lf/sub1/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   388
  ../archive_lf/sub1/sub2/large.bin
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   389
  $ rm -rf ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   390
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   391
Find an exact largefile match in a largefiles subrepo
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   392
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   393
  $ hg --config extensions.largefiles= archive -S -I 'sub1/sub2/large.bin' ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   394
  $ find ../archive_lf | sort
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   395
  ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   396
  ../archive_lf/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   397
  ../archive_lf/sub1/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   398
  ../archive_lf/sub1/sub2/large.bin
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   399
  $ rm -rf ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   400
24029
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   401
The local repo enables largefiles if a largefiles repo is cloned
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   402
  $ hg showconfig extensions
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   403
  abort: repository requires features unknown to this Mercurial: largefiles!
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   404
  (see http://mercurial.selenic.com/wiki/MissingRequirement for more information)
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   405
  [255]
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   406
  $ hg --config extensions.largefiles= clone -qU . ../lfclone
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   407
  $ cat ../lfclone/.hg/hgrc
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   408
  # example repository config (see "hg help config" for more info)
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   409
  [paths]
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   410
  default = $TESTTMP/cloned (glob)
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   411
  
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   412
  # path aliases to other clones of this repo in URLs or filesystem paths
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   413
  # (see "hg help config.paths" for more info)
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   414
  #
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   415
  # default-push = ssh://jdoe@example.net/hg/jdoes-fork
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   416
  # my-fork      = ssh://jdoe@example.net/hg/jdoes-fork
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   417
  # my-clone     = /home/jdoe/jdoes-clone
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   418
  
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   419
  [ui]
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   420
  # name and email (local to this repository, optional), e.g.
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   421
  # username = Jane Doe <jdoe@example.com>
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   422
  
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   423
  [extensions]
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   424
  largefiles=
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   425
17108
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   426
Find an exact match to a standin (should archive nothing)
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   427
  $ hg --config extensions.largefiles= archive -S -I 'sub/sub2/.hglf/large.bin' ../archive_lf
17113
d7493da233c8 tests: remove GNU quoting in test-subrepo-deep-nested-change.t
Mads Kiilerich <mads@kiilerich.com>
parents: 17112
diff changeset
   428
  $ find ../archive_lf 2> /dev/null | sort
17105
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   429
23837
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   430
  $ cat >> $HGRCPATH <<EOF
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   431
  > [extensions]
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   432
  > largefiles=
23886
5ce8dcd05dc4 largefiles: enable subrepo support for add
Matt Harbison <matt_harbison@yahoo.com>
parents: 23837
diff changeset
   433
  > [largefiles]
5ce8dcd05dc4 largefiles: enable subrepo support for add
Matt Harbison <matt_harbison@yahoo.com>
parents: 23837
diff changeset
   434
  > patterns=glob:**.dat
23837
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   435
  > EOF
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   436
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   437
Test forget through a deep subrepo with the largefiles extension, both a
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   438
largefile and a normal file.  Then a largefile that hasn't been committed yet.
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   439
  $ touch sub1/sub2/untracked.txt
23886
5ce8dcd05dc4 largefiles: enable subrepo support for add
Matt Harbison <matt_harbison@yahoo.com>
parents: 23837
diff changeset
   440
  $ touch sub1/sub2/large.dat
23837
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   441
  $ hg forget sub1/sub2/large.bin sub1/sub2/test.txt sub1/sub2/untracked.txt
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   442
  not removing sub1/sub2/untracked.txt: file is already untracked (glob)
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   443
  [1]
23886
5ce8dcd05dc4 largefiles: enable subrepo support for add
Matt Harbison <matt_harbison@yahoo.com>
parents: 23837
diff changeset
   444
  $ hg add --large --dry-run -v sub1/sub2/untracked.txt
23837
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   445
  adding sub1/sub2/untracked.txt as a largefile (glob)
23886
5ce8dcd05dc4 largefiles: enable subrepo support for add
Matt Harbison <matt_harbison@yahoo.com>
parents: 23837
diff changeset
   446
  $ hg add --large -v sub1/sub2/untracked.txt
5ce8dcd05dc4 largefiles: enable subrepo support for add
Matt Harbison <matt_harbison@yahoo.com>
parents: 23837
diff changeset
   447
  adding sub1/sub2/untracked.txt as a largefile (glob)
5ce8dcd05dc4 largefiles: enable subrepo support for add
Matt Harbison <matt_harbison@yahoo.com>
parents: 23837
diff changeset
   448
  $ hg add --normal -v sub1/sub2/large.dat
5ce8dcd05dc4 largefiles: enable subrepo support for add
Matt Harbison <matt_harbison@yahoo.com>
parents: 23837
diff changeset
   449
  adding sub1/sub2/large.dat (glob)
23837
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   450
  $ hg forget -v sub1/sub2/untracked.txt
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   451
  removing sub1/sub2/untracked.txt (glob)
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   452
  $ hg status -S
23886
5ce8dcd05dc4 largefiles: enable subrepo support for add
Matt Harbison <matt_harbison@yahoo.com>
parents: 23837
diff changeset
   453
  A sub1/sub2/large.dat
23837
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   454
  R sub1/sub2/large.bin
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   455
  R sub1/sub2/test.txt
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   456
  ? foo/bar/abc
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   457
  ? sub1/sub2/untracked.txt
24413
a8595176dd64 subrepo: add basic support to hgsubrepo for the files command
Matt Harbison <matt_harbison@yahoo.com>
parents: 24230
diff changeset
   458
  ? sub1/sub2/x.txt
23923
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   459
  $ hg add sub1/sub2
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   460
  $ hg ci -Sqm 'forget testing'
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   461
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   462
Test issue4330: commit a directory where only normal files have changed
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   463
  $ touch foo/bar/large.dat
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   464
  $ hg add --large foo/bar/large.dat
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   465
  $ hg ci -m 'add foo/bar/large.dat'
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   466
  $ touch a.txt
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   467
  $ touch a.dat
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   468
  $ hg add -v foo/bar/abc a.txt a.dat
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   469
  adding a.dat as a largefile
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   470
  adding a.txt
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   471
  adding foo/bar/abc (glob)
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   472
  $ hg ci -m 'dir commit with only normal file deltas' foo/bar
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   473
  $ hg status
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   474
  A a.dat
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   475
  A a.txt
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   476
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   477
Test a directory commit with a changed largefile and a changed normal file
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   478
  $ echo changed > foo/bar/large.dat
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   479
  $ echo changed > foo/bar/abc
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   480
  $ hg ci -m 'dir commit with normal and lf file deltas' foo
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   481
  $ hg status
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   482
  A a.dat
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   483
  A a.txt
23837
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   484
24230
23438bceba04 largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents: 24029
diff changeset
   485
  $ hg ci -m "add a.*"
23438bceba04 largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents: 24029
diff changeset
   486
  $ hg mv a.dat b.dat
23438bceba04 largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents: 24029
diff changeset
   487
  $ hg mv foo/bar/abc foo/bar/def
23438bceba04 largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents: 24029
diff changeset
   488
  $ hg status -C
23438bceba04 largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents: 24029
diff changeset
   489
  A b.dat
23438bceba04 largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents: 24029
diff changeset
   490
    a.dat
23438bceba04 largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents: 24029
diff changeset
   491
  A foo/bar/def
23438bceba04 largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents: 24029
diff changeset
   492
    foo/bar/abc
23438bceba04 largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents: 24029
diff changeset
   493
  R a.dat
23438bceba04 largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents: 24029
diff changeset
   494
  R foo/bar/abc
23438bceba04 largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents: 24029
diff changeset
   495
23438bceba04 largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents: 24029
diff changeset
   496
  $ hg ci -m "move large and normal"
23438bceba04 largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents: 24029
diff changeset
   497
  $ hg status -C --rev '.^' --rev .
23438bceba04 largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents: 24029
diff changeset
   498
  A b.dat
23438bceba04 largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents: 24029
diff changeset
   499
    a.dat
23438bceba04 largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents: 24029
diff changeset
   500
  A foo/bar/def
23438bceba04 largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents: 24029
diff changeset
   501
    foo/bar/abc
23438bceba04 largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents: 24029
diff changeset
   502
  R a.dat
23438bceba04 largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents: 24029
diff changeset
   503
  R foo/bar/abc
23438bceba04 largefiles: report the source of copied/moved largefiles in status -C
Matt Harbison <matt_harbison@yahoo.com>
parents: 24029
diff changeset
   504
24446
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   505
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   506
  $ echo foo > main
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   507
  $ hg ci -m "mod parent only"
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   508
  $ hg init sub3
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   509
  $ echo "sub3 = sub3" >> .hgsub
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   510
  $ echo xyz > sub3/a.txt
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   511
  $ hg add sub3/a.txt
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   512
  $ hg ci -Sm "add sub3"
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   513
  committing subrepository sub3
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   514
  $ cat .hgsub | grep -v sub3 > .hgsub1
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   515
  $ mv .hgsub1 .hgsub
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   516
  $ hg ci -m "remove sub3"
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   517
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   518
  $ hg log -r "subrepo()" --style compact
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   519
  0   7f491f53a367   1970-01-01 00:00 +0000   test
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   520
    main import
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   521
  
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   522
  1   ffe6649062fe   1970-01-01 00:00 +0000   test
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   523
    deep nested modif should trigger a commit
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   524
  
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   525
  2   9bb10eebee29   1970-01-01 00:00 +0000   test
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   526
    add test.txt
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   527
  
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   528
  3   7c64f035294f   1970-01-01 00:00 +0000   test
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   529
    add large files
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   530
  
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   531
  4   f734a59e2e35   1970-01-01 00:00 +0000   test
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   532
    forget testing
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   533
  
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   534
  11   9685a22af5db   1970-01-01 00:00 +0000   test
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   535
    add sub3
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   536
  
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   537
  12[tip]   2e0485b475b9   1970-01-01 00:00 +0000   test
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   538
    remove sub3
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   539
  
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   540
  $ hg log -r "subrepo('sub3')" --style compact
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   541
  11   9685a22af5db   1970-01-01 00:00 +0000   test
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   542
    add sub3
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   543
  
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   544
  12[tip]   2e0485b475b9   1970-01-01 00:00 +0000   test
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   545
    remove sub3
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   546
  
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   547
  $ hg log -r "subrepo('bogus')" --style compact
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   548
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   549
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   550
Test .hgsubstate in the R state
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   551
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   552
  $ hg rm .hgsub .hgsubstate
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   553
  $ hg ci -m 'trash subrepo tracking'
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   554
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   555
  $ hg log -r "subrepo('re:sub\d+')" --style compact
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   556
  0   7f491f53a367   1970-01-01 00:00 +0000   test
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   557
    main import
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   558
  
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   559
  1   ffe6649062fe   1970-01-01 00:00 +0000   test
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   560
    deep nested modif should trigger a commit
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   561
  
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   562
  2   9bb10eebee29   1970-01-01 00:00 +0000   test
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   563
    add test.txt
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   564
  
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   565
  3   7c64f035294f   1970-01-01 00:00 +0000   test
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   566
    add large files
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   567
  
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   568
  4   f734a59e2e35   1970-01-01 00:00 +0000   test
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   569
    forget testing
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   570
  
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   571
  11   9685a22af5db   1970-01-01 00:00 +0000   test
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   572
    add sub3
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   573
  
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   574
  12   2e0485b475b9   1970-01-01 00:00 +0000   test
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   575
    remove sub3
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   576
  
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   577
  13[tip]   a68b2c361653   1970-01-01 00:00 +0000   test
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   578
    trash subrepo tracking
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   579
  
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   580
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   581
Restore the trashed subrepo tracking
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   582
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   583
  $ hg rollback -q
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   584
  $ hg update -Cq .
582cfcc843c7 revset: add the 'subrepo' symbol
Matt Harbison <matt_harbison@yahoo.com>
parents: 24413
diff changeset
   585
17105
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   586
  $ cd ..