##// END OF EJS Templates
subrepos: abort commit by default if a subrepo is dirty (BC)...
subrepos: abort commit by default if a subrepo is dirty (BC) This changeset flips the default value of ui.commitsubrepos setting from True to False and adds a --subrepos flag to commit. The commit, status, and diff commands behave like this with regard to recusion and the ui.commitsubrepos setting: | recurses | recurses | by default | with --subrepos --------+---------------+---------------- commit: | commitsubrepo | True status: | False | True diff: | False | True By changing the default from True to False, the table becomes consistent in the two columns: * without --subrepos on the command line, commit will abort if a subrepo is dirty and status/diff wont show changes inside subrepos. * with --subrepos, all three commands will recurse. A --subrepos flag on the command line overrides the config settin.g

File last commit:

r14116:cd303243 default
r15321:e174353e stable
Show More
test-audit-path.t
82 lines | 1.4 KiB | text/troff | Tads3Lexer
$ hg init
should fail
$ hg add .hg/00changelog.i
abort: path contains illegal component: .hg/00changelog.i
[255]
$ mkdir a
$ echo a > a/a
$ hg ci -Ama
adding a/a
$ ln -s a b
$ echo b > a/b
should fail
$ hg add b/b
abort: path 'b/b' traverses symbolic link 'b'
[255]
should succeed
$ hg add b
should still fail - maybe
$ hg add b/b
abort: path 'b/b' traverses symbolic link 'b'
[255]
unbundle tampered bundle
$ hg init target
$ cd target
$ hg unbundle $TESTDIR/bundles/tampered.hg
adding changesets
adding manifests
adding file changes
added 5 changesets with 6 changes to 6 files (+4 heads)
(run 'hg heads' to see heads, 'hg merge' to merge)
attack .hg/test
$ hg manifest -r0
.hg/test
$ hg update -Cr0
abort: path contains illegal component: .hg/test
[255]
attack foo/.hg/test
$ hg manifest -r1
foo/.hg/test
$ hg update -Cr1
abort: path 'foo/.hg/test' is inside nested repo 'foo'
[255]
attack back/test where back symlinks to ..
$ hg manifest -r2
back
back/test
$ hg update -Cr2
abort: path 'back/test' traverses symbolic link 'back'
[255]
attack ../test
$ hg manifest -r3
../test
$ hg update -Cr3
abort: path contains illegal component: ../test
[255]
attack /tmp/test
$ hg manifest -r4
/tmp/test
$ hg update -Cr4
abort: No such file or directory: $TESTTMP/target//tmp/test
[255]