--- /dev/null
+SHELL = /bin/bash
+
+.PHONY: all
+all: git_hooks
+ $(info make git_hooks: set up Git repository hooks)
+
+puppet_parseonly = puppet parser validate
+
+.PHONY: git_hooks
+git_hooks:
+ @if ! git config --get remote.origin.push '^HEAD$$' >/dev/null; then \
+ git config --add remote.origin.push HEAD; \
+ fi
+ @if git config --get remote.origin.push '^refs/notes/audit:refs/notes/audit$$' >/dev/null; then \
+ git config --unset remote.origin.push refs/notes/audit:refs/notes/audit; \
+ fi
+ @if git config --get branch.master.rebase true >/dev/null; then \
+ git config branch.master.rebase true; \
+ fi
+ @ln -sf ../../tools/git_hooks/pre-commit .git/hooks/pre-commit
+ @$(RM) .git/hooks/post-commit
+
+vim_helpers:
+ rsync -a tools/vim ~/.vim/
--- /dev/null
+Read the Puppet documentation:
+
+ http://docs.puppetlabs.com/puppet/latest/reference/lang_summary.html
+ http://docs.puppetlabs.com/references/stable/type.html
+ http://docs.puppetlabs.com/references/stable/function.html
+
+* Set up local Git hooks:
+
+ $ make git_hooks
+
+ You have to do this each and every time you clone this repository.
+ Bad Things will happen if you don't.
+
+* Install facter >= 1.6.2, puppet >= 2.7.6 and pcregrep.
+
+* For Vim users, tools/vim contains some files that make life easier.
+
+* Install puppet-lint. You may not get the puppet-lint command on $PATH. If not,
+ symlink it from ~/bin or somewhere.