Mercurial > hg
view tests/test-sparse-clone.t @ 41289:593f6359681d
update: fix edge-case with update.atomic-file and read-only files
We used to create the tempfile with the original file mode. That means
creating a read-only tempfile when the original file is read-only, which crash
if we need to write on the tempfile.
The file in the working directory ends up being writable with and without the
atomic update config, so the behavior is the same.
author | Boris Feld <boris.feld@octobus.net> |
---|---|
date | Thu, 10 Jan 2019 14:57:01 +0100 |
parents | 5abc47d4ca6b |
children | 5c2a4f37eace |
line wrap: on
line source
test sparse $ cat >> $HGRCPATH << EOF > [ui] > ssh = "$PYTHON" "$RUNTESTDIR/dummyssh" > username = nobody <no.reply@fb.com> > [extensions] > sparse= > purge= > strip= > rebase= > EOF $ hg init myrepo $ cd myrepo $ echo a > index.html $ echo x > data.py $ echo z > readme.txt $ cat > webpage.sparse <<EOF > [include] > *.html > EOF $ cat > backend.sparse <<EOF > [include] > *.py > EOF $ hg ci -Aqm 'initial' $ cd .. Verify local clone with a sparse profile works $ hg clone --enable-profile webpage.sparse myrepo clone1 updating to branch default warning: sparse profile 'webpage.sparse' not found in rev 000000000000 - ignoring it 1 files updated, 0 files merged, 0 files removed, 0 files unresolved $ cd clone1 $ ls index.html $ cd .. Verify local clone with include works $ hg clone --include *.sparse myrepo clone2 updating to branch default 2 files updated, 0 files merged, 0 files removed, 0 files unresolved $ cd clone2 $ ls backend.sparse webpage.sparse $ cd .. Verify local clone with exclude works $ hg clone --exclude data.py myrepo clone3 updating to branch default 4 files updated, 0 files merged, 0 files removed, 0 files unresolved $ cd clone3 $ ls backend.sparse index.html readme.txt webpage.sparse $ cd .. Verify sparse clone profile over ssh works $ hg clone -q --enable-profile webpage.sparse ssh://user@dummy/myrepo clone4 warning: sparse profile 'webpage.sparse' not found in rev 000000000000 - ignoring it $ cd clone4 $ ls index.html $ cd ..