aboutsummaryrefslogtreecommitdiff
path: root/incoming/pre-local/01-hg-pull
diff options
context:
space:
mode:
authorNæþ'n Lasseter <Næþ'n Lasseter nathan@bytemark.co.uk>2016-08-25 14:22:29 +0100
committerNæþ'n Lasseter <Næþ'n Lasseter nathan@bytemark.co.uk>2016-08-25 14:22:29 +0100
commitbe45dcad9491e809d13145baab5e6ea1caf80791 (patch)
tree7144a6ca8f90c37a600f050e6ad48d535535186e /incoming/pre-local/01-hg-pull
Initial Commit
Diffstat (limited to 'incoming/pre-local/01-hg-pull')
-rwxr-xr-xincoming/pre-local/01-hg-pull20
1 files changed, 20 insertions, 0 deletions
diff --git a/incoming/pre-local/01-hg-pull b/incoming/pre-local/01-hg-pull
new file mode 100755
index 0000000..bbc9336
--- /dev/null
+++ b/incoming/pre-local/01-hg-pull
@@ -0,0 +1,20 @@
+#!/bin/bash
+
+function pull_and_update_repo {
+ hg pull --update
+}
+
+function test_if_working_directory_clean {
+ hg status --all 2>&1 | egrep -v '^C' > /dev/null || pull_and_update_repo
+}
+
+function test_if_in_repo_root {
+ [ -d .hg ] && test_if_working_directory_clean
+}
+
+function test_if_hg_repo {
+ hg status 2>&1 | grep 'abort: no repository found' > /dev/null || test_if_in_repo_root
+}
+
+test_if_hg_repo
+exit 0