##// END OF EJS Templates
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs...
lfs: add the 'lfs' requirement in the changegroup transaction introducing lfs A hook like this is how largefiles manages to do the same. Largefiles uses a changegroup hook, but this uses pretxnchangegroup because that actually causes the transaction to rollback in the unlikely event that writing the requirements out fails. Sadly, the requires file itself isn't rolled back if a subsequent hook fails, but that seems trivial. Now that commit, changegroup and convert are covered, I don't think there's any way to get an lfs repo without the requirement. The grep exit code is blotted out of some test-lfs-serve.t tests now showing the requirement, because run-tests.py doesn't support conditionalizing the exit code.

File last commit:

r33355:9087f999 default
r35520:6bb940de default
Show More
test-sparse-verbose-json.t
82 lines | 1.7 KiB | text/troff | Tads3Lexer
/ tests / test-sparse-verbose-json.t
Gregory Szorc
sparse: vendor Facebook-developed extension...
r33289 test sparse with --verbose and -T json
$ hg init myrepo
$ cd myrepo
$ cat > .hg/hgrc <<EOF
> [extensions]
> sparse=
> strip=
> EOF
$ echo a > show
$ echo x > hide
$ hg ci -Aqm 'initial'
$ echo b > show
$ echo y > hide
$ echo aa > show2
$ echo xx > hide2
$ hg ci -Aqm 'two'
Verify basic --include and --reset
$ hg up -q 0
Gregory Szorc
sparse: rename command to debugsparse...
r33293 $ hg debugsparse --include 'hide' -Tjson
Gregory Szorc
sparse: vendor Facebook-developed extension...
r33289 [
{
"exclude_rules_added": 0,
"files_added": 0,
"files_conflicting": 0,
"files_dropped": 1,
"include_rules_added": 1,
"profiles_added": 0
}
]
Gregory Szorc
sparse: rename command to debugsparse...
r33293 $ hg debugsparse --clear-rules
$ hg debugsparse --include 'hide' --verbose
Gregory Szorc
sparse: vendor Facebook-developed extension...
r33289 removing show
Gregory Szorc
sparse: move printing of sparse config changes function into core...
r33355 Profiles changed: 0
Include rules changed: 1
Exclude rules changed: 0
Gregory Szorc
sparse: vendor Facebook-developed extension...
r33289
Gregory Szorc
sparse: rename command to debugsparse...
r33293 $ hg debugsparse --reset -Tjson
Gregory Szorc
sparse: vendor Facebook-developed extension...
r33289 [
{
"exclude_rules_added": 0,
"files_added": 1,
"files_conflicting": 0,
"files_dropped": 0,
"include_rules_added": -1,
"profiles_added": 0
}
]
Gregory Szorc
sparse: rename command to debugsparse...
r33293 $ hg debugsparse --include 'hide'
$ hg debugsparse --reset --verbose
Gregory Szorc
sparse: vendor Facebook-developed extension...
r33289 getting show
Gregory Szorc
sparse: move printing of sparse config changes function into core...
r33355 Profiles changed: 0
Include rules changed: -1
Exclude rules changed: 0
Gregory Szorc
sparse: vendor Facebook-developed extension...
r33289
Verifying that problematic files still allow us to see the deltas when forcing:
Gregory Szorc
sparse: rename command to debugsparse...
r33293 $ hg debugsparse --include 'show*'
Gregory Szorc
sparse: vendor Facebook-developed extension...
r33289 $ touch hide
Gregory Szorc
sparse: rename command to debugsparse...
r33293 $ hg debugsparse --delete 'show*' --force -Tjson
Gregory Szorc
sparse: vendor Facebook-developed extension...
r33289 pending changes to 'hide'
[
{
"exclude_rules_added": 0,
"files_added": 0,
"files_conflicting": 1,
"files_dropped": 0,
"include_rules_added": -1,
"profiles_added": 0
}
]
Gregory Szorc
sparse: rename command to debugsparse...
r33293 $ hg debugsparse --include 'show*' --force
Gregory Szorc
sparse: vendor Facebook-developed extension...
r33289 pending changes to 'hide'
Gregory Szorc
sparse: rename command to debugsparse...
r33293 $ hg debugsparse --delete 'show*' --force --verbose
Gregory Szorc
sparse: vendor Facebook-developed extension...
r33289 pending changes to 'hide'
Gregory Szorc
sparse: move printing of sparse config changes function into core...
r33355 Profiles changed: 0
Include rules changed: -1
Exclude rules changed: 0