diff options
Diffstat (limited to 'magic/Magdir/revision')
-rw-r--r-- | magic/Magdir/revision | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/magic/Magdir/revision b/magic/Magdir/revision index e4e4de1059633..4ae4f75f9bf3b 100644 --- a/magic/Magdir/revision +++ b/magic/Magdir/revision @@ -1,6 +1,6 @@ #------------------------------------------------------------------------------ -# $File: revision,v 1.9 2013/02/06 14:18:52 christos Exp $ +# $File: revision,v 1.10 2017/10/19 16:40:37 christos Exp $ # file(1) magic for revision control files # From Hendrik Scholz <hendrik@scholz.net> 0 string/t /1\ :pserver: cvs password text file @@ -15,13 +15,27 @@ # Type: Git pack # From: Adam Buchbinder <adam.buchbinder@gmail.com> +# Update: Joerg Jenderek +# URL: http://fileformats.archiveteam.org/wiki/Git +# reference: https://github.com/git/git/blob/master/Documentation/technical/pack-format.txt # The actual magic is 'PACK', but that clashes with Doom/Quake packs. However, # those have a little-endian offset immediately following the magic 'PACK', # the first byte of which is never 0, while the first byte of the Git pack # version, since it's a tiny number stored in big-endian format, is always 0. -0 string PACK\0 Git pack ->4 belong >0 \b, version %d ->>8 belong >0 \b, %d objects +0 string PACK +# GRR: line above is too general as it matches also PackDir archive ./acorn +# test for major version. Git 2017 accepts version number 2 or 3 +>4 ubelong <9 +# Acorn PackDir with method 0 compression has root like ADFS::HardDisc4.$.AsylumSrc +# or SystemDevice::foobar +>>9 search/13 :: +# but in git binary +>>9 default x Git pack +!:mime application/x-git +!:ext pack +# 4 GB limit implies unsigned integer +>>>4 ubelong x \b, version %u +>>>8 ubelong x \b, %u objects # Type: Git pack index # From: Adam Buchbinder <adam.buchbinder@gmail.com> |