sapling/eden/hg-server/tests/test-sparse-merges.t
Andres Suarez 0f273c5ded update globset from 0.4.5 to 0.4.7
Summary:
The only real change here is: https://github.com/BurntSushi/ripgrep/pull/1756
This is a patch release but fixes a very glaring bug that others have
depended on. This diff fixes the uses to match the old behavior.

Although it's billed as a "fix", it's actually a huge perf improvement
for Linttool, which uses predominantly recursive suffix globs. The fact
that we don't have to compile ~5,000 regexps at Linttool startup anymore
makes such a huge difference that I am going to do write up soon.

Reviewed By: ndmitchell

Differential Revision: D29085977

fbshipit-source-id: 304470e5fa8cb986738aa0d9dd941641684a9194
2021-06-15 15:47:49 -07:00

67 lines
1.5 KiB
Perl

#chg-compatible
#require no-windows
test merging things outside of the sparse checkout
$ hg init myrepo
$ cd myrepo
$ enable sparse
$ echo foo > foo
$ hg commit -m initial -A foo
$ hg bookmark -ir. initial
$ echo bar > bar
$ hg commit -m 'feature - bar1' -A bar
$ hg bookmark -ir. feature1
$ hg update --inactive -q initial
$ echo bar2 > bar
$ hg commit -m 'feature - bar2' -A bar
$ hg bookmark -ir. feature2
$ hg update --inactive -q feature1
$ hg sparse --exclude 'bar*'
$ hg merge feature2 --tool :merge-other
temporarily included 1 file(s) in the sparse checkout for merging
merging bar
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
Verify bar was merged temporarily
$ ls
bar
foo
$ hg status
M bar
Verify bar disappears automatically when the working copy becomes clean
$ hg commit -m "merged"
cleaned up 1 temporarily added file(s) from the sparse checkout
$ hg bookmark -ir. merged
$ hg status
$ ls
foo
$ hg cat -r . bar
bar2
Test merging things outside of the sparse checkout that are not in the working
copy
$ hg debugstrip -q -r .
$ hg up --inactive -q feature2
$ touch branchonly
$ hg ci -Aqm 'add branchonly'
$ hg up --inactive -q feature1
$ hg sparse -X branchonly
$ hg merge feature2 --tool :merge-other
temporarily included 1 file(s) in the sparse checkout for merging
merging bar
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)