¿Cuánto de un git sha es * generalmente * considerado necesario para identificar de forma única un cambio en una base de código dada?

Si va a construir, digamos, una estructura de directorio donde se nombre un directorio para un commit en un repositorio Git, y desea que sea lo suficientemente corto como para que no le sangren los ojos, pero lo suficiente como para que la posibilidad de que choque sería insignificante, ¿qué cantidad de subcadena de SHA se requiere generalmente?

Digamos que quiero identificar de forma única este cambio:https://github.com/wycats/handlebars.js/commit/e62999f9ece7d9218b9768a908f8df9c11d7e920

Puedo usar tan poco como los primeros cuatro caracteres:https://github.com/wycats/handlebars.js/commit/e629

Pero siento que eso sería arriesgado. Pero tomando una base de código que, durante un par de años, podría tener, digamos, cambios de 30k, ¿cuáles son las posibilidades de colisión si uso 8 caracteres? 12? ¿Hay un número que generalmente se considera aceptable para este tipo de cosas?

Respuestas a la pregunta(5)

Su respuesta a la pregunta