tests/test-sparse-clear.t
author Martin von Zweigbergk <martinvonz@google.com>
Fri, 15 Sep 2017 10:42:49 -0700
changeset 34286 ecc96506c49d
parent 33293 c9cbf4de27ba
child 44724 5c2a4f37eace
permissions -rw-r--r--
obsmarker: track operation by default We added support for including the operation responsible for creating the obsmarker in 3546a771e376 (obsolete: add operation metadata to rebase/amend/histedit obsmarkers, 2017-05-09). However, soon thereafter, in f432897a9f49 (obsmarker: add an experimental flag controlling "operation" recording, 2017-05-20), it was hidden behind a config that was off by default. It seems unlikely that people will manually turn it on, and obsmarkers/evolution as a whole is still experimental anyway, so let's turn on the tracking by default. Differential Revision: https://phab.mercurial-scm.org/D722

test sparse

  $ hg init myrepo
  $ cd myrepo
  $ cat >> $HGRCPATH <<EOF
  > [extensions]
  > sparse=
  > purge=
  > strip=
  > rebase=
  > EOF

  $ echo a > index.html
  $ echo x > data.py
  $ echo z > readme.txt
  $ cat > base.sparse <<EOF
  > [include]
  > *.sparse
  > EOF
  $ hg ci -Aqm 'initial'
  $ cat > webpage.sparse <<EOF
  > %include base.sparse
  > [include]
  > *.html
  > EOF
  $ hg ci -Aqm 'initial'

Clear rules when there are includes

  $ hg debugsparse --include *.py
  $ ls
  data.py
  $ hg debugsparse --clear-rules
  $ ls
  base.sparse
  data.py
  index.html
  readme.txt
  webpage.sparse

Clear rules when there are excludes

  $ hg debugsparse --exclude *.sparse
  $ ls
  data.py
  index.html
  readme.txt
  $ hg debugsparse --clear-rules
  $ ls
  base.sparse
  data.py
  index.html
  readme.txt
  webpage.sparse

Clearing rules should not alter profiles

  $ hg debugsparse --enable-profile webpage.sparse
  $ ls
  base.sparse
  index.html
  webpage.sparse
  $ hg debugsparse --include *.py
  $ ls
  base.sparse
  data.py
  index.html
  webpage.sparse
  $ hg debugsparse --clear-rules
  $ ls
  base.sparse
  index.html
  webpage.sparse