##// END OF EJS Templates
doc: unify section level between help topics...
doc: unify section level between help topics Some help topics use "-" for the top level underlining section mark, but "-" is used also for the top level categorization in generated documents: "hg.1.html", for example. So, TOC in such documents contain "sections in each topics", too. This patch changes underlining section mark in some help topics to unify section level in generated documents. After this patching, levels of each section marks are: level0 """""" level1 ====== level2 ------ level3 ...... level4 ###### And use of section markers in each documents are: - mercurial/help/*.txt can use level1 or more (now these use level1 and level2) - help for core commands can use level2 or more (now these use no section marker) - descriptions of extensions can use level2 or more (now hgext/acl uses level2) - help for commands defined in extension can use level4 or more (now "convert" of hgext/convert uses level4) "Level0" is used as top level categorization only in "doc/hg.1.txt" and the intermediate file generated by "doc/gendoc.py", so end users don't see it in "hg help" outoput and so on.

File last commit:

r16913:f2719b38 default
r17267:979b107e stable
Show More
test-revert.t
278 lines | 4.2 KiB | text/troff | Tads3Lexer
$ hg init repo
$ cd repo
$ echo 123 > a
$ echo 123 > c
$ echo 123 > e
$ hg add a c e
$ hg commit -m "first" a c e
nothing changed
$ hg revert
abort: no files or directories specified
(use --all to revert all files)
[255]
$ hg revert --all
$ echo 123 > b
should show b unknown
$ hg status
? b
$ echo 12 > c
should show b unknown and c modified
$ hg status
M c
? b
$ hg add b
should show b added and c modified
$ hg status
M c
A b
$ hg rm a
should show a removed, b added and c modified
$ hg status
M c
A b
R a
$ hg revert a
should show b added, copy saved, and c modified
$ hg status
M c
A b
$ hg revert b
should show b unknown, and c modified
$ hg status
M c
? b
$ hg revert --no-backup c
should show unknown: b
$ hg status
? b
$ hg add b
should show b added
$ hg status b
A b
$ rm b
should show b deleted
$ hg status b
! b
$ hg revert -v b
forgetting b
should not find b
$ hg status b
b: * (glob)
should show a c e
$ ls
a
c
e
should verbosely save backup to e.orig
$ echo z > e
$ hg revert --all -v
saving current version of e as e.orig
reverting e
should say no changes needed
$ hg revert a
no changes needed to a
should say file not managed
$ echo q > q
$ hg revert q
file not managed: q
$ rm q
should say file not found
$ hg revert notfound
notfound: no such file in rev 334a9e57682c
$ touch d
$ hg add d
$ hg rm a
$ hg commit -m "second"
$ echo z > z
$ hg add z
$ hg st
A z
? e.orig
should add a, remove d, forget z
$ hg revert --all -r0
adding a
removing d
forgetting z
should forget a, undelete d
$ hg revert --all -rtip
forgetting a
undeleting d
$ rm a *.orig
should silently add a
$ hg revert -r0 a
$ hg st a
A a
$ hg rm d
$ hg st d
R d
should silently keep d removed
$ hg revert -r0 d
$ hg st d
R d
$ hg update -C
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
#if execbit
$ chmod +x c
$ hg revert --all
reverting c
should print non-executable
$ test -x c || echo non-executable
non-executable
$ chmod +x c
$ hg commit -m exe
$ chmod -x c
$ hg revert --all
reverting c
should print executable
$ test -x c && echo executable
executable
#endif
$ cd ..
Issue241: update and revert produces inconsistent repositories
$ hg init a
$ cd a
$ echo a >> a
$ hg commit -A -d '1 0' -m a
adding a
$ echo a >> a
$ hg commit -d '2 0' -m a
$ hg update 0
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ mkdir b
$ echo b > b/b
should fail - no arguments
$ hg revert -rtip
abort: no files or directories specified
(use --all to revert all files, or 'hg update 1' to update)
[255]
should succeed
$ hg revert --all -rtip
reverting a
Issue332: confusing message when reverting directory
$ hg ci -A -m b
adding b/b
created new head
$ echo foobar > b/b
$ mkdir newdir
$ echo foo > newdir/newfile
$ hg add newdir/newfile
$ hg revert b newdir
reverting b/b (glob)
forgetting newdir/newfile (glob)
$ echo foobar > b/b
$ hg revert .
reverting b/b (glob)
reverting a rename target should revert the source
$ hg mv a newa
$ hg revert newa
$ hg st a newa
? newa
$ cd ..
$ hg init ignored
$ cd ignored
$ echo '^ignored$' > .hgignore
$ echo '^ignoreddir$' >> .hgignore
$ echo '^removed$' >> .hgignore
$ mkdir ignoreddir
$ touch ignoreddir/file
$ touch ignoreddir/removed
$ touch ignored
$ touch removed
4 ignored files (we will add/commit everything)
$ hg st -A -X .hgignore
I ignored
I ignoreddir/file
I ignoreddir/removed
I removed
$ hg ci -qAm 'add files' ignored ignoreddir/file ignoreddir/removed removed
$ echo >> ignored
$ echo >> ignoreddir/file
$ hg rm removed ignoreddir/removed
should revert ignored* and undelete *removed
$ hg revert -a --no-backup
reverting ignored
reverting ignoreddir/file (glob)
undeleting ignoreddir/removed (glob)
undeleting removed
$ hg st -mardi
$ hg up -qC
$ echo >> ignored
$ hg rm removed
should silently revert the named files
$ hg revert --no-backup ignored removed
$ hg st -mardi
$ cd ..