Mercurial > hg
view tests/test-paths.t @ 23291:03d2d6931836
transaction: allow registering a temporary transaction file
During the transaction, files may be created to store or expose data
involved in the transaction (eg: changelog index data are written in
a 'changelog.i.a' for hooks). But we do not have an official way to
record such file creation and make sure they are cleaned up. The lack
of clean-up is currently okay because there is a single file involved
and a single producer/consumer.
However, as we want to expose more data (bookmarks, phases, obsmarker)
we need something more solid. The 'backupentries' mechanism could
handle that. Temporary files can be encoded as a backup of nothing
'('', <temporarypath>)'. We "need" to attach it to the same mechanism
as we use to be able to use temporary transaction files outside of
.'store/' and 'backupentries' is expected to gain such feature.
This changeset makes it clear that we should rename 'backupentries' to
something more generic.
author | Pierre-Yves David <pierre-yves.david@fb.com> |
---|---|
date | Wed, 05 Nov 2014 09:27:08 +0000 |
parents | f2719b387380 |
children | 4dccc37b87bd 59d5f619e69e |
line wrap: on
line source
$ hg init a $ hg clone a b updating to branch default 0 files updated, 0 files merged, 0 files removed, 0 files unresolved $ cd a $ echo '[paths]' >> .hg/hgrc $ echo 'dupe = ../b' >> .hg/hgrc $ echo 'expand = $SOMETHING/bar' >> .hg/hgrc $ hg in dupe comparing with $TESTTMP/b (glob) no changes found [1] $ cd .. $ hg -R a in dupe comparing with $TESTTMP/b (glob) no changes found [1] $ cd a $ hg paths dupe = $TESTTMP/b (glob) expand = $TESTTMP/a/$SOMETHING/bar (glob) $ SOMETHING=foo hg paths dupe = $TESTTMP/b (glob) expand = $TESTTMP/a/foo/bar (glob) #if msys $ SOMETHING=//foo hg paths dupe = $TESTTMP/b (glob) expand = /foo/bar #else $ SOMETHING=/foo hg paths dupe = $TESTTMP/b (glob) expand = /foo/bar #endif $ hg paths -q dupe expand $ hg paths dupe $TESTTMP/b (glob) $ hg paths -q dupe $ hg paths unknown not found! [1] $ hg paths -q unknown [1] $ cd .. 'file:' disables [paths] entries for clone destination $ cat >> $HGRCPATH <<EOF > [paths] > gpath1 = http://hg.example.com > EOF $ hg clone a gpath1 abort: cannot create new http repository [255] $ hg clone a file:gpath1 updating to branch default 0 files updated, 0 files merged, 0 files removed, 0 files unresolved $ cd gpath1 $ hg -q id 000000000000 $ cd ..