hgbook / fr / examples / ch09 / hook.ws

#!/bin/bash

hg init a
cd a
echo '[hooks]' > .hg/hgrc
echo "pretxncommit.whitespace = hg export tip | (! egrep -q '^\\+.*[ \\t]$')" >> .hg/hgrc

#$ name: simple

cat .hg/hgrc
echo 'a ' > a
hg commit -A -m 'test with trailing whitespace'
echo 'a' > a
hg commit -A -m 'drop trailing whitespace and try again'

#$ name:

echo '[hooks]' > .hg/hgrc
echo "pretxncommit.whitespace = .hg/check_whitespace.py" >> .hg/hgrc
cp $EXAMPLE_DIR/ch09/check_whitespace.py.lst .hg/check_whitespace.py
chmod +x .hg/check_whitespace.py

#$ name: better

cat .hg/hgrc
echo 'a ' >> a
hg commit -A -m 'add new line with trailing whitespace'
sed -i 's, *$,,' a
hg commit -A -m 'trimmed trailing whitespace'

#$ name:
exit 0
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.