diff options
Diffstat (limited to 'commons/hash.go')
-rw-r--r-- | commons/hash.go | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/commons/hash.go b/commons/hash.go new file mode 100644 index 0000000..03fa53f --- /dev/null +++ b/commons/hash.go @@ -0,0 +1,17 @@ +package commons + +import ( + "crypto/sha1" + "fmt" + "strconv" +) + +func GitHash(t string, b []byte) string { + h := []byte(t) + h = append(h, ' ') + h = strconv.AppendInt(h, int64(len(b)), 10) + h = append(h, 0) + h = append(h, b...) + + return fmt.Sprintf("%x", sha1.Sum(h)) +} |