provide pre- and post- hooks with parsed command line arguments.
python hooks are passed two new keyword arguments:
- opts: a dict of options; unsepcified options are set to their default
- pats: a list of arguments
shell hooks receive two new variables containing string representations
of the above data:
- $HG_OPTS
- $HG_PATS
for example, the opts and pats for 'hg -f v1.1' would be:
{'force': True, 'message': '', 'rev': '', 'user': '', 'date': '', 'local': None, 'remove': None, 'mq': None}
['v1.1']
#!/bin/sh
hg init
touch a
hg add a
hg commit -m "Added a" -d "1000000 0"
touch main
hg add main
hg commit -m "Added main" -d "1000000 0"
hg checkout 0
echo Main should be gone
ls
touch side1
hg add side1
hg commit -m "Added side1" -d "1000000 0"
touch side2
hg add side2
hg commit -m "Added side2" -d "1000000 0"
hg log
echo Should have two heads, side2 and main
hg heads
echo Should show "a side1 side2"
ls
hg update --debug -C 1
echo Should only show "a main"
ls