tests/test-hardlinks.t
changeset 32741 c2cb0de25120
parent 32344 37bcb4665529
child 32800 5e76a07e9f42
equal deleted inserted replaced
32740:0cd641bfbf57 32741:c2cb0de25120
   201 #if hardlink-whitelisted
   201 #if hardlink-whitelisted
   202   $ nlinksdir r2/.hg/store/fncache
   202   $ nlinksdir r2/.hg/store/fncache
   203   2 r2/.hg/store/fncache
   203   2 r2/.hg/store/fncache
   204 #endif
   204 #endif
   205 
   205 
       
   206 Create a file which exec permissions we will change
       
   207   $ cd r3
       
   208   $ echo "echo hello world" > f3
       
   209   $ hg add f3
       
   210   $ hg ci -mf3
       
   211   $ cd ..
       
   212 
   206   $ cd r3
   213   $ cd r3
   207   $ hg tip --template '{rev}:{node|short}\n'
   214   $ hg tip --template '{rev}:{node|short}\n'
   208   11:a6451b6bc41f
   215   12:d3b77733a28a
   209   $ echo bla > f1
   216   $ echo bla > f1
       
   217   $ chmod +x f3
   210   $ hg ci -m1
   218   $ hg ci -m1
   211   $ cd ..
   219   $ cd ..
   212 
   220 
   213 Create hardlinked copy r4 of r3 (on Linux, we would call 'cp -al'):
   221 Create hardlinked copy r4 of r3 (on Linux, we would call 'cp -al'):
   214 
   222 
   239   2 r4/.hg/store/00changelog.i
   247   2 r4/.hg/store/00changelog.i
   240   2 r4/.hg/store/00manifest.i
   248   2 r4/.hg/store/00manifest.i
   241   2 r4/.hg/store/data/d1/f2.d
   249   2 r4/.hg/store/data/d1/f2.d
   242   2 r4/.hg/store/data/d1/f2.i
   250   2 r4/.hg/store/data/d1/f2.i
   243   2 r4/.hg/store/data/f1.i
   251   2 r4/.hg/store/data/f1.i
       
   252   2 r4/.hg/store/data/f3.i
   244   2 r4/.hg/store/fncache
   253   2 r4/.hg/store/fncache
   245   2 r4/.hg/store/phaseroots
   254   2 r4/.hg/store/phaseroots
   246   2 r4/.hg/store/undo
   255   2 r4/.hg/store/undo
   247   2 r4/.hg/store/undo.backup.fncache
   256   2 r4/.hg/store/undo.backup.fncache
   248   2 r4/.hg/store/undo.backup.phaseroots
   257   2 r4/.hg/store/undo.backup.phaseroots
   254   2 r4/.hg/undo.desc
   263   2 r4/.hg/undo.desc
   255   [24] r4/\.hg/undo\.dirstate (re)
   264   [24] r4/\.hg/undo\.dirstate (re)
   256   2 r4/d1/data1
   265   2 r4/d1/data1
   257   2 r4/d1/f2
   266   2 r4/d1/f2
   258   2 r4/f1
   267   2 r4/f1
   259 
   268   2 r4/f3
       
   269 
       
   270 Update back to revision 12 in r4 should break hardlink of file f1 and f3:
   260 #if hardlink-whitelisted
   271 #if hardlink-whitelisted
   261   $ nlinksdir r4/.hg/undo.backup.dirstate r4/.hg/undo.dirstate
   272   $ nlinksdir r4/.hg/undo.backup.dirstate r4/.hg/undo.dirstate
   262   4 r4/.hg/undo.backup.dirstate
   273   4 r4/.hg/undo.backup.dirstate
   263   4 r4/.hg/undo.dirstate
   274   4 r4/.hg/undo.dirstate
   264 #endif
   275 #endif
   265 
   276 
   266 Update back to revision 11 in r4 should break hardlink of file f1:
   277 
   267 
   278   $ hg -R r4 up 12
   268   $ hg -R r4 up 11
   279   2 files updated, 0 files merged, 0 files removed, 0 files unresolved
   269   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
       
   270 
   280 
   271   $ nlinksdir r4
   281   $ nlinksdir r4
   272   2 r4/.hg/00changelog.i
   282   2 r4/.hg/00changelog.i
   273   1 r4/.hg/branch
   283   1 r4/.hg/branch
   274   2 r4/.hg/cache/branch2-base
   284   2 r4/.hg/cache/branch2-base
   285   2 r4/.hg/store/00changelog.i
   295   2 r4/.hg/store/00changelog.i
   286   2 r4/.hg/store/00manifest.i
   296   2 r4/.hg/store/00manifest.i
   287   2 r4/.hg/store/data/d1/f2.d
   297   2 r4/.hg/store/data/d1/f2.d
   288   2 r4/.hg/store/data/d1/f2.i
   298   2 r4/.hg/store/data/d1/f2.i
   289   2 r4/.hg/store/data/f1.i
   299   2 r4/.hg/store/data/f1.i
       
   300   2 r4/.hg/store/data/f3.i
   290   2 r4/.hg/store/fncache
   301   2 r4/.hg/store/fncache
   291   2 r4/.hg/store/phaseroots
   302   2 r4/.hg/store/phaseroots
   292   2 r4/.hg/store/undo
   303   2 r4/.hg/store/undo
   293   2 r4/.hg/store/undo.backup.fncache
   304   2 r4/.hg/store/undo.backup.fncache
   294   2 r4/.hg/store/undo.backup.phaseroots
   305   2 r4/.hg/store/undo.backup.phaseroots
   300   2 r4/.hg/undo.desc
   311   2 r4/.hg/undo.desc
   301   [24] r4/\.hg/undo\.dirstate (re)
   312   [24] r4/\.hg/undo\.dirstate (re)
   302   2 r4/d1/data1
   313   2 r4/d1/data1
   303   2 r4/d1/f2
   314   2 r4/d1/f2
   304   1 r4/f1
   315   1 r4/f1
       
   316   1 r4/f3
   305 
   317 
   306 #if hardlink-whitelisted
   318 #if hardlink-whitelisted
   307   $ nlinksdir r4/.hg/undo.backup.dirstate r4/.hg/undo.dirstate
   319   $ nlinksdir r4/.hg/undo.backup.dirstate r4/.hg/undo.dirstate
   308   4 r4/.hg/undo.backup.dirstate
   320   4 r4/.hg/undo.backup.dirstate
   309   4 r4/.hg/undo.dirstate
   321   4 r4/.hg/undo.dirstate