web-dev-qa-db-fra.com

Dans Git, quelle est la différence entre des hachages longs et courts?

Voici le long hash de Git:

commettre c26cf8af130955c5c67cfea96f9532680b963628

Fusion: 8654907 37c2a4f

Auteur: nicolas 

Date: mer 26 avr 13:28:22 2017 -0400

Voici le court:

 Enter image description here

18
Nicolas S.Xu

Un hachage court ne comprend que les 7 premiers caractères de votre hachage complet.

Juste en dessous du commit encerclé dans votre capture d'écran, vous pouvez voir un commit étiqueté c26cf8a. Cela devrait être le commit c26cf8af130955c5c67cfea96f9532680b963628 que vous cherchiez.

6

Le hachage court montre les sept premiers caractères du hachage. Le hachage court de c26cf8af130955c5c67cfea96f9532680b963628 est c26cf8a dans la deuxième ligne. Voir la documentation :

Git est suffisamment intelligent pour comprendre le commet que vous vouliez taper si vous fournissiez les premiers caractères, à condition que votre SHA-1 partiel comporte au moins quatre caractères et ne soit pas ambigu.

4
jschnasse

Le hachage court est juste une version plus courte du hachage original (long). Le hachage Git original est long de 40 octets tandis que court est seulement de 8 octets. Cependant, il devient difficile de le gérer (en termes de saisie ou d'affichage), et c'est pourquoi la version courte est utilisée.

Cette approche est utilisée dans presque tous les projets où un hachage est utilisé pour intégrité (distribution de paquets), versioning (Git et SVN) ou/ layered architecture (Docker).

0
radbrawler