##// END OF EJS Templates
filelog: extract metadata parsing and packing...
filelog: extract metadata parsing and packing _parsemeta returns the dictionary and a list of keys in the order they appear in metadata. This can be used to repack the dictionary in the same order. _packmeta creates metadata from a dictionary and an optional key-order list. In _parsemeta, we use slices and re.search indead of str.index so we can accept both buffers and strings.

File last commit:

r12328:b63f6422 default
r14074:e8271159 default
Show More
test-issue322.t
59 lines | 828 B | text/troff | Tads3Lexer
http://mercurial.selenic.com/bts/issue322
File replaced with directory:
$ hg init a
$ cd a
$ echo a > a
$ hg commit -Ama
adding a
$ rm a
$ mkdir a
$ echo a > a/a
Should fail - would corrupt dirstate:
$ hg add a/a
abort: file 'a' in dirstate clashes with 'a/a'
[255]
$ cd ..
Directory replaced with file:
$ hg init c
$ cd c
$ mkdir a
$ echo a > a/a
$ hg commit -Ama
adding a/a
$ rm -r a
$ echo a > a
Should fail - would corrupt dirstate:
$ hg add a
abort: directory 'a' already in dirstate
[255]
$ cd ..
Directory replaced with file:
$ hg init d
$ cd d
$ mkdir b
$ mkdir b/c
$ echo a > b/c/d
$ hg commit -Ama
adding b/c/d
$ rm -r b
$ echo a > b
Should fail - would corrupt dirstate:
$ hg add b
abort: directory 'b' already in dirstate
[255]