tests/test-subrepo-deep-nested-change.t
author Matt Harbison <matt_harbison@yahoo.com>
Mon, 02 Feb 2015 19:58:41 -0500
changeset 24029 e1dbe0b215ae
parent 23923 ab6fd3205dad
child 24230 23438bceba04
permissions -rw-r--r--
largefiles: set the extension as enabled locally after a clone requiring it When cloning a repo that requires largefiles, the user had to either enable the extension on the command line and then manually edit the local hgrc file after the clone, or just enable it globally for the user. Since it is a feature of last resort, and materially affects even repos without any largefiles when it is enabled, we should make it easier to not have it enabled globally. This simply adds the enabling statement to the local hgrc if the requires file mandates its use (which only happens after the first largefile is committed). That means that a user who works with a mix of largefile and normal repos can always clone with '--config extensions.largefiles=', and the extension is permanently enabled or not as appropriate. The change in test-largefiles.t is simply because the order of loading rebase and largefiles changed. The same change occurs if the order is flipped in the hgrc file at the top of the test.
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
f6b8d23492e5 remove: support remove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23325
diff changeset
   144
  $ hg status -S
f6b8d23492e5 remove: support remove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23325
diff changeset
   145
  R sub1/.hgsubstate
f6b8d23492e5 remove: support remove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23325
diff changeset
   146
  R sub1/sub2/folder/test.txt
f6b8d23492e5 remove: support remove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23325
diff changeset
   147
  $ hg update -Cq
23538
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   148
  $ touch sub1/foo
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   149
  $ 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
   150
  $ rm sub1/sub2/test.txt
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   151
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   152
Test relative path printing + subrepos
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   153
  $ mkdir -p foo/bar
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   154
  $ cd foo
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   155
  $ touch bar/abc
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   156
  $ hg addremove -S ..
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   157
  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
   158
  removing ../sub1/sub2/test.txt (glob)
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   159
  adding ../sub1/foo (glob)
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   160
  adding bar/abc (glob)
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   161
  $ cd ..
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   162
  $ hg status -S
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   163
  A foo/bar/abc
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   164
  A sub1/foo
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   165
  R sub1/sub2/test.txt
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   166
  $ hg update -Cq
23539
cb42050f2dad addremove: support addremove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23538
diff changeset
   167
  $ touch sub1/sub2/folder/bar
cb42050f2dad addremove: support addremove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23538
diff changeset
   168
  $ hg addremove sub1/sub2
cb42050f2dad addremove: support addremove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23538
diff changeset
   169
  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
   170
  $ hg status -S
cb42050f2dad addremove: support addremove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23538
diff changeset
   171
  A sub1/sub2/folder/bar
cb42050f2dad addremove: support addremove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23538
diff changeset
   172
  ? foo/bar/abc
cb42050f2dad addremove: support addremove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23538
diff changeset
   173
  ? sub1/foo
cb42050f2dad addremove: support addremove with explicit paths in subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23538
diff changeset
   174
  $ hg update -Cq
23540
f274d27f1994 addremove: automatically process a subrepository's subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23539
diff changeset
   175
  $ hg addremove sub1
f274d27f1994 addremove: automatically process a subrepository's subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23539
diff changeset
   176
  adding sub1/sub2/folder/bar (glob)
f274d27f1994 addremove: automatically process a subrepository's subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23539
diff changeset
   177
  adding sub1/foo (glob)
f274d27f1994 addremove: automatically process a subrepository's subrepos
Matt Harbison <matt_harbison@yahoo.com>
parents: 23539
diff changeset
   178
  $ 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
   179
  $ 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
   180
  $ 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
   181
  $ hg ci -ASm "remove test.txt"
23686
164915e8ef7b narrowmatcher: propagate the rel() method
Matt Harbison <matt_harbison@yahoo.com>
parents: 23540
diff changeset
   182
  adding sub1/sub2/folder/bar
164915e8ef7b narrowmatcher: propagate the rel() method
Matt Harbison <matt_harbison@yahoo.com>
parents: 23540
diff changeset
   183
  removing sub1/sub2/folder/test.txt
164915e8ef7b narrowmatcher: propagate the rel() method
Matt Harbison <matt_harbison@yahoo.com>
parents: 23540
diff changeset
   184
  removing sub1/sub2/test.txt
164915e8ef7b narrowmatcher: propagate the rel() method
Matt Harbison <matt_harbison@yahoo.com>
parents: 23540
diff changeset
   185
  adding sub1/foo
23538
ccfb56450f21 addremove: add support for the -S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 23537
diff changeset
   186
  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
   187
  committing subrepository sub1
f1b06a8aad42 commit: propagate --addremove to subrepos if -S is specified (issue3759)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23327
diff changeset
   188
  committing subrepository sub1/sub2 (glob)
f1b06a8aad42 commit: propagate --addremove to subrepos if -S is specified (issue3759)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23327
diff changeset
   189
  $ hg rollback -q
f1b06a8aad42 commit: propagate --addremove to subrepos if -S is specified (issue3759)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23327
diff changeset
   190
  $ hg up -Cq
23325
4165cfd67519 remove: recurse into subrepositories with --subrepos/-S flag
Matt Harbison <matt_harbison@yahoo.com>
parents: 17346
diff changeset
   191
17108
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   192
  $ 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
   193
  $ find ../archive_all | sort
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   194
  ../archive_all
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   195
  ../archive_all/.hg_archival.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   196
  ../archive_all/.hgsub
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   197
  ../archive_all/.hgsubstate
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   198
  ../archive_all/main
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   199
  ../archive_all/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   200
  ../archive_all/sub1/.hgsub
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   201
  ../archive_all/sub1/.hgsubstate
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   202
  ../archive_all/sub1/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   203
  ../archive_all/sub1/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   204
  ../archive_all/sub1/sub2/folder
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   205
  ../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
   206
  ../archive_all/sub1/sub2/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   207
  ../archive_all/sub1/sub2/test.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   208
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   209
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
   210
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   211
  $ 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
   212
  $ find ../archive_exclude | sort
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   213
  ../archive_exclude
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   214
  ../archive_exclude/.hg_archival.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   215
  ../archive_exclude/.hgsub
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   216
  ../archive_exclude/.hgsubstate
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   217
  ../archive_exclude/main
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   218
  ../archive_exclude/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   219
  ../archive_exclude/sub1/.hgsub
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   220
  ../archive_exclude/sub1/.hgsubstate
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   221
  ../archive_exclude/sub1/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   222
  ../archive_exclude/sub1/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   223
  ../archive_exclude/sub1/sub2/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   224
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   225
  $ 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
   226
  $ find ../archive_include | sort
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   227
  ../archive_include
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   228
  ../archive_include/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   229
  ../archive_include/sub1/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   230
  ../archive_include/sub1/sub2/folder
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   231
  ../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
   232
  ../archive_include/sub1/sub2/test.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   233
17105
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   234
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
   235
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
   236
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
   237
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
   238
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   239
  $ 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
   240
  $ 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
   241
  $ 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
   242
  $ 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
   243
  $ 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
   244
  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
   245
  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
   246
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   247
  $ 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
   248
  $ 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
   249
  ../archive_lf
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   250
  ../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
   251
  ../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
   252
  ../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
   253
  ../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
   254
  ../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
   255
  ../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
   256
  ../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
   257
  ../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
   258
  ../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
   259
  ../archive_lf/sub1/sub2
17108
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   260
  ../archive_lf/sub1/sub2/folder
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   261
  ../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
   262
  ../archive_lf/sub1/sub2/large.bin
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   263
  ../archive_lf/sub1/sub2/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   264
  ../archive_lf/sub1/sub2/test.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   265
  $ rm -rf ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   266
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   267
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
   268
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   269
  $ 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
   270
  $ find ../archive_lf | sort
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   271
  ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   272
  ../archive_lf/.hg_archival.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   273
  ../archive_lf/.hgsub
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   274
  ../archive_lf/.hgsubstate
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   275
  ../archive_lf/main
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   276
  ../archive_lf/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   277
  ../archive_lf/sub1/.hgsub
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   278
  ../archive_lf/sub1/.hgsubstate
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   279
  ../archive_lf/sub1/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   280
  ../archive_lf/sub1/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   281
  ../archive_lf/sub1/sub2/folder
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   282
  ../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
   283
  ../archive_lf/sub1/sub2/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   284
  ../archive_lf/sub1/sub2/test.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   285
  $ rm -rf ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   286
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   287
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
   288
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   289
  $ hg --config extensions.largefiles= archive -S -X '**.txt' ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   290
  $ find ../archive_lf | sort
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   291
  ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   292
  ../archive_lf/.hgsub
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   293
  ../archive_lf/.hgsubstate
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   294
  ../archive_lf/large.bin
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   295
  ../archive_lf/main
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   296
  ../archive_lf/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   297
  ../archive_lf/sub1/.hgsub
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   298
  ../archive_lf/sub1/.hgsubstate
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   299
  ../archive_lf/sub1/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   300
  ../archive_lf/sub1/sub2
17106
4d0e81dca75f largefiles: fix the directory structure when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 17105
diff changeset
   301
  ../archive_lf/sub1/sub2/large.bin
4d0e81dca75f largefiles: fix the directory structure when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 17105
diff changeset
   302
  ../archive_lf/sub1/sub2/sub2
17108
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   303
  $ rm -rf ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   304
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   305
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
   306
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   307
  $ 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
   308
  $ find ../archive_lf | sort
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   309
  ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   310
  ../archive_lf/.hg_archival.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   311
  ../archive_lf/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   312
  ../archive_lf/sub1/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   313
  ../archive_lf/sub1/sub2/folder
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   314
  ../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
   315
  ../archive_lf/sub1/sub2/test.txt
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   316
  $ rm -rf ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   317
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   318
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
   319
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   320
  $ 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
   321
  $ find ../archive_lf | sort
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   322
  ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   323
  ../archive_lf/large.bin
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   324
  ../archive_lf/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   325
  ../archive_lf/sub1/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   326
  ../archive_lf/sub1/sub2/large.bin
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   327
  $ rm -rf ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   328
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   329
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
   330
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   331
  $ 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
   332
  $ find ../archive_lf | sort
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   333
  ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   334
  ../archive_lf/sub1
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   335
  ../archive_lf/sub1/sub2
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   336
  ../archive_lf/sub1/sub2/large.bin
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   337
  $ rm -rf ../archive_lf
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   338
24029
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   339
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
   340
  $ 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
   341
  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
   342
  (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
   343
  [255]
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   344
  $ 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
   345
  $ 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
   346
  # 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
   347
  [paths]
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   348
  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
   349
  
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   350
  # 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
   351
  # (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
   352
  #
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   353
  # 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
   354
  # 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
   355
  # 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
   356
  
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   357
  [ui]
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   358
  # 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
   359
  # 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
   360
  
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   361
  [extensions]
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   362
  largefiles=
e1dbe0b215ae largefiles: set the extension as enabled locally after a clone requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents: 23923
diff changeset
   363
17108
1894dac619de subrepo: propagate matcher to subrepos when archiving
Matt Harbison <matt_harbison@yahoo.com>
parents: 17106
diff changeset
   364
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
   365
  $ 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
   366
  $ 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
   367
23837
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   368
  $ cat >> $HGRCPATH <<EOF
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   369
  > [extensions]
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   370
  > largefiles=
23886
5ce8dcd05dc4 largefiles: enable subrepo support for add
Matt Harbison <matt_harbison@yahoo.com>
parents: 23837
diff changeset
   371
  > [largefiles]
5ce8dcd05dc4 largefiles: enable subrepo support for add
Matt Harbison <matt_harbison@yahoo.com>
parents: 23837
diff changeset
   372
  > patterns=glob:**.dat
23837
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   373
  > EOF
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   374
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   375
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
   376
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
   377
  $ touch sub1/sub2/untracked.txt
23886
5ce8dcd05dc4 largefiles: enable subrepo support for add
Matt Harbison <matt_harbison@yahoo.com>
parents: 23837
diff changeset
   378
  $ touch sub1/sub2/large.dat
23837
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   379
  $ 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
   380
  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
   381
  [1]
23886
5ce8dcd05dc4 largefiles: enable subrepo support for add
Matt Harbison <matt_harbison@yahoo.com>
parents: 23837
diff changeset
   382
  $ 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
   383
  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
   384
  $ 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
   385
  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
   386
  $ 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
   387
  adding sub1/sub2/large.dat (glob)
23837
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   388
  $ hg forget -v sub1/sub2/untracked.txt
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   389
  removing sub1/sub2/untracked.txt (glob)
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   390
  $ hg status -S
23886
5ce8dcd05dc4 largefiles: enable subrepo support for add
Matt Harbison <matt_harbison@yahoo.com>
parents: 23837
diff changeset
   391
  A sub1/sub2/large.dat
23837
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   392
  R sub1/sub2/large.bin
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   393
  R sub1/sub2/test.txt
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   394
  ? foo/bar/abc
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   395
  ? sub1/sub2/untracked.txt
23923
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   396
  $ 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
   397
  $ 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
   398
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   399
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
   400
  $ 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
   401
  $ 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
   402
  $ 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
   403
  $ 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
   404
  $ 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
   405
  $ 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
   406
  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
   407
  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
   408
  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
   409
  $ 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
   410
  $ hg status
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   411
  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
   412
  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
   413
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   414
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
   415
  $ 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
   416
  $ 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
   417
  $ 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
   418
  $ hg status
ab6fd3205dad largefiles: fix commit of a directory with no largefile changes (issue4330)
Matt Harbison <matt_harbison@yahoo.com>
parents: 23886
diff changeset
   419
  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
   420
  A a.txt
23837
2b79d124a12f largefiles: enable subrepo support for forget
Matt Harbison <matt_harbison@yahoo.com>
parents: 23686
diff changeset
   421
17105
7d45730ea1b8 largefiles: fix a traceback when archiving a subrepo in a subrepo
Matt Harbison <matt_harbison@yahoo.com>
parents: 16073
diff changeset
   422
  $ cd ..