2015-12-12 4 views
8

Verwenden von git-lfs/1.1.0 (GitHub; linux 386; go 1.5.1), Dateigröße 4.3G.git-lfs: fatal: Dateien mit dieser Größe (4.3G) können nicht verarbeitet werden

git init 
git lfs install 
git lfs track *.nnex 

.gitattributes: *.nnex filter=lfs diff=lfs merge=lfs -text

git add evernote-backup.nnex: fatal: Cannot handle files this big

git lfs ls-files: Git can't resolve ref: "HEAD"

git lfs track: Listing tracked paths evernote-backup.nnex .gitattributes)

git lfs env:

WARNING: Reading LFS config from ".gitconfig", not ".lfsconfig". Rename to ".lfsconfig" before Git LFS v2.0 to remove this warning. 
git-lfs/1.1.0 (GitHub; linux 386; go 1.5.1) 
git version 2.1.4 

LocalWorkingDir=/home/vitaly 
LocalGitDir=/home/vitaly/.git 
LocalGitStorageDir=/home/vitaly/.git 
LocalMediaDir=/home/vitaly/.git/lfs/objects 
TempDir=/home/vitaly/.git/lfs/tmp 
ConcurrentTransfers=3 
BatchTransfer=true 
git config filter.lfs.smudge = "git-lfs smudge %f" 
git config filter.lfs.clean = "git-lfs clean %f" 

Ich erhalte die folgende Fehlermeldung:

git-lfs: fatal: Cannot handle files this big (4.3G) 
+0

Ist nicht die Unfähigkeit für Git HEAD eine Sorge zu finden? http://stackoverflow.com/questions/4848607/git-fatal-no-such-ref-head – rbatt

+0

@rbatt von Ihrem Link Ich versuchte 'Echo Ref: Refs/Köpfe/Master> .git/HEAD' aber nach' Git lfs ls-files' Ich sehe das gleiche 'Git kann nicht beheben ref:" HEAD "' –

+0

können Sie andere Dinge in git tun? Als ungelöster HEAD scheint das Problem zu sein; aber ich weiß es nicht. – rbatt

Antwort

4

Dies ist ein 32-Bit-Ausgabe auf i386-Adressierung und Git und git-lfs kann einfach nicht eine Datei größer als 4 GB adressieren. Der Maximalwert einer 32-Bit-Ganzzahl ohne Vorzeichen ist , was etwa 4 GB ergibt.

Wir können sehen, wo dieser Fehler innerhalb des Git-Quellcode in git-compat-util.h geworfen wird:

744 static inline size_t xsize_t(off_t len) 
745 { 
746  if (len > (size_t) len) 
747   die("Cannot handle files this big"); 
748  return (size_t)len; 
749 } 

Ich weiß nicht über genug, wie git-lfs arbeitet intern zu wissen, ob dies umgangen werden kann.

Wenn Sie an einem 64-Bit- (x86_64) System statt an dem 32bit (i386) System arbeiten, das Sie verwenden, ist dies eine Option, die Ihr Problem beheben wird. Alternativ können Sie möglicherweise git-annex anstelle von git-lfs mit einigem Erfolg, aber someone else had a similar issue mit git-annex verwenden. Es gibt nicht genug Details in dem Fehlerbericht, um zu wissen, ob dies immer noch ein Problem auf 32-Bit-Systemen ist.

Leider sind Sie mit einer üblichen 32-Bit-Hardwarebeschränkung konfrontiert. Bei diesen Systemen treten Probleme auf, wenn Sie versuchen, Dateien mit mehr als 4 GB zu verarbeiten. Es ist Upgrade-Zeit!