aboutsummaryrefslogtreecommitdiffstats
path: root/plumbing/format/packfile/common.go
diff options
context:
space:
mode:
authorAntonio Navarro Perez <antnavper@gmail.com>2016-11-24 15:15:59 +0100
committerMáximo Cuadros <mcuadros@gmail.com>2016-11-24 15:15:59 +0100
commit81c5d2c6c672509ee7f30a346b890f3920ff20c1 (patch)
tree741dc07f3b083a1184bc0ced96677bcf93884186 /plumbing/format/packfile/common.go
parent08e08d771ef03df80248c80d81475fe7c5ea6fe7 (diff)
downloadgo-git-81c5d2c6c672509ee7f30a346b890f3920ff20c1.tar.gz
plumbing/packfile: PACK encoder (#131)
* plumbing/packfile: PACK encoder - Added simple PACK encoder, deltas not supported by now * Requested changes * Requested changes * Requested changes
Diffstat (limited to 'plumbing/format/packfile/common.go')
-rw-r--r--plumbing/format/packfile/common.go15
1 files changed, 15 insertions, 0 deletions
diff --git a/plumbing/format/packfile/common.go b/plumbing/format/packfile/common.go
new file mode 100644
index 0000000..1656551
--- /dev/null
+++ b/plumbing/format/packfile/common.go
@@ -0,0 +1,15 @@
+package packfile
+
+var signature = []byte{'P', 'A', 'C', 'K'}
+
+const (
+ // VersionSupported is the packfile version supported by this package
+ VersionSupported uint32 = 2
+
+ firstLengthBits = uint8(4) // the first byte into object header has 4 bits to store the length
+ lengthBits = uint8(7) // subsequent bytes has 7 bits to store the length
+ maskFirstLength = 15 // 0000 1111
+ maskContinue = 0x80 // 1000 0000
+ maskLength = uint8(127) // 0111 1111
+ maskType = uint8(112) // 0111 0000
+)