#!/bin/sh echo "[extensions]" >> $HGRCPATH echo "mq=" >> $HGRCPATH echo "[diff]" >> $HGRCPATH echo "nodates=true" >> $HGRCPATH catlog() { cat .hg/patches/$1.patch | sed -e "s/^diff \-r [0-9a-f]* /diff -r ... /" \ -e "s/^\(# Parent \).*/\1/" hg log --template "{rev}: {desc} - {author}\n" } runtest() { echo ==== init hg init a cd a hg qinit echo ==== qnew -U hg qnew -U 1.patch catlog 1 echo ==== qref echo "1" >1 hg add hg qref catlog 1 echo ==== qref -u hg qref -u mary catlog 1 echo ==== qnew hg qnew 2.patch echo "2" >2 hg add hg qref catlog 2 echo ==== qref -u hg qref -u jane catlog 2 echo ==== qnew -U -m hg qnew -U -m "Three" 3.patch catlog 3 echo ==== qref echo "3" >3 hg add hg qref catlog 3 echo ==== qref -m hg qref -m "Drei" catlog 3 echo ==== qref -u hg qref -u mary catlog 3 echo ==== qref -u -m hg qref -u maria -m "Three (again)" catlog 3 echo ==== qnew -m hg qnew -m "Four" 4.patch echo "4" >4of t hg add hg qref catlog 4 echo ==== qref -u hg qref -u jane catlog 4 echo ==== qnew with HG header hg qnew --config 'mq.plain=true' 5.patch hg qpop echo "# HG changeset patch" >>.hg/patches/5.patch echo "# User johndoe" >>.hg/patches/5.patch hg qpush 2>&1 | grep 'now at' catlog 5 echo ==== hg qref echo "5" >5 hg add hg qref catlog 5 echo ==== hg qref -U hg qref -U catlog 5 echo ==== hg qref -u hg qref -u johndeere catlog 5 echo ==== qnew with plain header hg qnew --config 'mq.plain=true' -U 6.patch hg qpop hg qpush 2>&1 | grep 'now at' catlog 6 echo ==== hg qref echo "6" >6 hg add hg qref catlog 6 echo ==== hg qref -U hg qref -U catlog 6 echo ==== hg qref -u hg qref -u johndeere catlog 6 echo ==== "qpop -a / qpush -a" hg qpop -a hg qpush -a hg log --template "{rev}: {desc} - {author}\n" } echo ======= plain headers echo "[mq]" >> $HGRCPATH echo "plain=true" >> $HGRCPATH mkdir sandbox (cd sandbox ; runtest) rm -r sandbox echo ======= hg headers echo "plain=false" >> $HGRCPATH mkdir sandbox (cd sandbox ; runtest) rm -r sandbox runtest