Mercurial > hg
view tests/test-mq-header-date @ 6174:434139080ed4
Permit XML entities to be escaped in template output.
Useful for creating XML documents directly from Hg logging. Can also be used for
HTML. For use in content, will escape '&', '<', and for completeness '>'
(although it is not strictly necessary). For use in attributes, will also escape
' and ". Will also replace nonprinting (ASCII) control characters with spaces,
since these are illegal in XML.
author | Jesse Glick <jesse.glick@sun.com> |
---|---|
date | Mon, 28 Jan 2008 22:19:12 -0500 |
parents | 38b592536a58 |
children | 8cb81d75730c |
line wrap: on
line source
#!/bin/sh echo "[extensions]" >> $HGRCPATH echo "mq=" >> $HGRCPATH echo "[diff]" >> $HGRCPATH echo "nodates=true" >> $HGRCPATH catpatch() { cat .hg/patches/$1.patch | sed -e "s/^diff \-r [0-9a-f]* /diff -r ... /" } catlog() { catpatch $1 hg log --template "{rev}: {desc} - {author}\n" } catlogd() { catpatch $1 hg log --template "{rev}: {desc} - {author} - {date}\n" } drop() { hg qpop hg qdel $1.patch } echo ==== init hg init a cd a hg qinit echo ==== qnew -d hg qnew -d '3 0' 1.patch catlogd 1 echo ==== qref echo "1" >1 hg add hg qref catlogd 1 echo ==== qref -d hg qref -d '4 0' catlogd 1 echo ==== qnew hg qnew 2.patch echo "2" >2 hg add hg qref catlog 2 echo ==== qref -d hg qref -d '5 0' catlog 2 drop 2 echo ==== qnew -d -m hg qnew -d '6 0' -m "Three" 3.patch catlogd 3 echo ==== qref echo "3" >3 hg add hg qref catlogd 3 echo ==== qref -m hg qref -m "Drei" catlogd 3 echo ==== qref -d hg qref -d '7 0' catlogd 3 echo ==== qref -d -m hg qref -d '8 0' -m "Three (again)" catlogd 3 echo ==== qnew -m hg qnew -m "Four" 4.patch echo "4" >4 hg add hg qref catlog 4 echo ==== qref -d hg qref -d '9 0' catlog 4 drop 4 echo ==== qnew with HG header hg qnew 5.patch hg qpop echo "# HG changeset patch" >>.hg/patches/5.patch echo "# Date 10 0" >>.hg/patches/5.patch hg qpush 2>&1 | grep 'Now at' catlogd 5 echo ==== hg qref echo "5" >5 hg add hg qref catlogd 5 echo ==== hg qref -d hg qref -d '11 0' catlogd 5 echo ==== qnew -u hg qnew -u jane 6.patch echo "6" >6 hg add hg qref catlog 6 echo ==== qref -d hg qref -d '12 0' catlog 6 drop 6 echo ==== qnew -d hg qnew -d '13 0' 7.patch echo "7" >7 hg add hg qref catlog 7 echo ==== qref -u hg qref -u john catlogd 7 echo ==== qnew hg qnew 8.patch echo "8" >8 hg add hg qref catlog 8 echo ==== qref -u -d hg qref -u john -d '14 0' catlog 8 drop 8 echo ==== qnew -m hg qnew -m "Nine" 9.patch echo "9" >9 hg add hg qref catlog 9 echo ==== qref -u -d hg qref -u john -d '15 0' catlog 9 drop 9 echo ==== "qpop -a / qpush -a" hg qpop -a hg qpush -a hg log --template "{rev}: {desc} - {author} - {date}\n"