summaryrefslogtreecommitdiff
path: root/morphlib/git.py
diff options
context:
space:
mode:
authorSam Thursfield <sam.thursfield@codethink.co.uk>2012-10-02 11:21:53 +0100
committerSam Thursfield <sam.thursfield@codethink.co.uk>2012-10-03 14:40:37 +0100
commit28f8e387b8e5bf6ffcc0ca340bfc8717d5ffc9d5 (patch)
treef65a926c6ee38e3581793061fd2929668c61f1dc /morphlib/git.py
parent021b065273c0fd01bd688fc121cbc778973ab7c4 (diff)
downloadmorph-28f8e387b8e5bf6ffcc0ca340bfc8717d5ffc9d5.tar.gz
Extract is_valid_sha1() to morphlib.git
Diffstat (limited to 'morphlib/git.py')
-rw-r--r--morphlib/git.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/morphlib/git.py b/morphlib/git.py
index 5862ef9b..27f22351 100644
--- a/morphlib/git.py
+++ b/morphlib/git.py
@@ -225,3 +225,9 @@ def find_first_ref(runcmd, gitdir, ref):
'''Find the *first* ref match and returns its sha1.'''
return runcmd(['git', 'show-ref', ref],
cwd=gitdir).split("\n")[0].split(" ")[0]
+
+def is_valid_sha1(ref):
+ '''Checks whether a string is a valid SHA1.'''
+
+ valid_chars = 'abcdefABCDEF0123456789'
+ return len(ref) == 40 and all([x in valid_chars for x in ref])