Non exatly pausa il repo, ma si tratta di sospetti. Il test per le modalità di file zero imbottiti entrò nel lontano 2005:
commit 64071805eda2b57d2b77943bb3f9865d90562ecf
Author: Linus Torvalds <[email protected]>
Date: Wed Jul 27 16:08:43 2005 -0700
git-fsck-cache: be stricter about "tree" objects
In particular, warn about things like zero-padding of the mode bits,
which is a big no-no, since it makes otherwise identical trees have
different representations (and thus different SHA1 numbers).
Also make the warnings more regular.
Signed-off-by: Linus Torvalds <[email protected]>
I diversi valori SHA1 faranno git credere che "Un albero" è diverso da "albero B" anche quando sono gli stessi in tutti i modi più importanti (stessi file e modalità tranne gli zero iniziali in uno), che renderà il repository leggermente più grande del necessario. Inoltre, due commit effettivamente identici (ad es. Creati riproducendo una patch) sembrano diversi. Non so nulla di ciò che avrà un errore, ma potrebbe confondere varie operazioni ("si aspettano" di trovare differenze, ma poi non ne troverà) e nel tempo potrebbe gonfiare il repository .
Due domande aggiuntive interessanti: (1) Come si può risolvere questo? Ho il sospetto che l'uso di git filter-branch
possa risolverlo (ripetendo i commit per ottenere oggetti di albero "corretti"), ma dovresti capire quale branch (es) contiene i commit che contengono quegli alberi, e anche dover eliminare i "cattivi" si impegna riferendosi agli oggetti dell'albero cattivo. (E naturalmente questo causerà ogni sorta di dolore per chiunque abbia clonato il repository.) (2) Come è nato questo in primo luogo?
Sarebbe interessante vedere quali sono le stampe git cat-file
per questi alberi, sebbene git cat-file -p
aggiunga zeri iniziali, quindi è una specie di dolore. (git cat-file tree bde551ba2d6882ac7614c25305c24ddc1c75b1c4
esegue il dump del contenuto non elaborato, ma sono pieni di bit binari. È possibile visualizzare solo le informazioni necessarie.)
Grazie per l'informazione. 'git filter-branch' è troppo pericoloso da usare. Mi piacerebbe avere una soluzione che non pregiudichi la mia capacità di spingere/tirare da telecomandi. Spero che tale soluzione esista. –