Mercurial > hg
view tests/test-merge6 @ 1592:347c44611348
gpg signing extension for hg
the principle is almost the same as how tags work:
.hgsigs stores signatures, localsigs stores local signatures
the format of the signatures is:
nodeid sigversion base64_detached_sig
sigversion 0 signs simply the nodeid (maybe we would like
to sign other things in the future).
you can associate fingerprints with roles in hgrc like:
[gpg]
fingerprint_of_a_key_without_spaces = release
fingerprint_of_a_key_without_spaces = contributor, testing
the key used for signing can be specified on the command line or
via hgrc (key =)
thanks to Eric Hopper for testing and bugfixing
author | Benoit Boissinot <benoit.boissinot@ens-lyon.org> |
---|---|
date | Fri, 16 Dec 2005 11:12:08 -0600 |
parents | 0902ffece4b4 |
children | 7544700fd931 |
line wrap: on
line source
#!/bin/sh cat <<'EOF' > merge #!/bin/sh echo merging for `basename $1` EOF chmod +x merge HGMERGE=./merge; export HGMERGE mkdir A1 cd A1 hg init echo This is file foo1 > foo echo This is file bar1 > bar hg add foo bar hg commit -m "commit text" -d "0 0" cd .. hg clone A1 B1 cd A1 rm bar hg remove bar hg commit -m "commit test" -d "0 0" cd ../B1 echo This is file foo22 > foo hg commit -m "commit test" -d "0 0" cd .. hg clone A1 A2 hg clone B1 B2 cd A1 hg pull ../B1 hg update -m hg commit -m "commit test" -d "0 0" echo bar should remain deleted. hg manifest cd ../B2 hg pull ../A2 hg update -m hg commit -m "commit test" -d "0 0" echo bar should remain deleted. hg manifest