Cosa succederebbe se due diversi commit in un repository git avessero lo stesso hash?

4

So che è stato detto che è praticamente statisticamente impossibile, ma questa è una domanda diversa. Quali sarebbero le conseguenze se contro ogni previsione accadesse?

    
posta Jemar Jones 24.07.2015 - 23:49
fonte

1 risposta

3

Se due file hanno lo stesso hash, allora git presuppone che siano lo stesso file. Ad esempio, se si modifica un file in modo tale che l'hass rimanga lo stesso, git non realizzerà che il file è stato modificato e "git status" non lo segnalerà. Ora se cambi un file due volte, in modo che l'hash cambi da A a X e ritorni ad A, e hai commesso entrambe le modifiche, e tiro il repository mentre ho il vecchio file con hash A, allora è molto probabile che io abbia vinto ' t ottenere il cambiamento perché git pensa che ce l'ho già.

Ovviamente con l'hash a 160 bit, è molto più probabile che un meteorite colpisca il server che contiene il master e lo distrugga con tutti i backup, mentre un altro ti colpisce, distrugge il tuo computer e ti uccide prima di provare a eseguire il commit.

    
risposta data 25.07.2015 - 01:13
fonte

Leggi altre domande sui tag