diff --git a/doc/hooks b/doc/hooks
index 30cd373a50b492b472edffe498e9ac63cff45516..282ee86265c765c7a457234931aaed000ae913aa 100644
--- a/doc/hooks
+++ b/doc/hooks
@@ -15,11 +15,11 @@ Available hooks are:
 * pre-init
 * post-init
 * pre-merge
-    Use this hook to detect and handle merge conflicts before vcsh's native code
+	Use this hook to detect and handle merge conflicts before vcsh's native code
 	finds and errors on them. This is useful for allowing clones on top of existing
 	files.
 * post-merge
-    Use this hook to finish handling any merge conflicts found in the pre-merge hook.
+	Use this hook to finish handling any merge conflicts found in the pre-merge hook.
 * pre-pull
 * post-pull
 * pre-push
diff --git a/doc/sample_hooks/post-merge-unclobber b/doc/sample_hooks/post-merge-unclobber
new file mode 100755
index 0000000000000000000000000000000000000000..017a13fc50dcc0484f60497f7409cac8c3d07769
--- /dev/null
+++ b/doc/sample_hooks/post-merge-unclobber
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+# This finds objects that the pre-merge script moved out of the way to
+# avoid conflicts when running git clone and moves them back to their
+# original places. The result is that the git repository gets checked out
+# and the extant objects end up back in the working directory. Git now
+# sees these as un-staged changes to the working branch and you can deal
+# with them by adding them or reverting.
+
+find -name '*.vcsh-unclobber' -execdir rename .vcsh-unclobber '' {} \;
diff --git a/doc/sample_hooks/pre-merge-unclobber b/doc/sample_hooks/pre-merge-unclobber
new file mode 100755
index 0000000000000000000000000000000000000000..93a731908f08e8b75a95b1569aea69061a3bec21
--- /dev/null
+++ b/doc/sample_hooks/pre-merge-unclobber
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+# This code does amost exactly what the native VCSH sanity checking code
+# does except that on finding a potential merge conflict, it moves the 
+# extant object out of the way temporarily. The merge then happens cleanly
+# as far as git knows, and a post-merge hook can figure out what to do with
+# the extant versions of the objects.
+
+for object in $(git ls-tree -r origin/master | awk '{print $4}'); do
+	[ -e "$object" ] && mv "$object" "$object.vcsh-unclobber" 
+done