¿Por qué iba a pagar? –detach

Entiendo lo que sucede bajo el capó, cuando ejecuto $ git checkout --detach .

Mientras estoy en master , cuando $ git checkout --detach I $ git checkout --detach , mi .git/HEAD no apunta a ref: refs/heads/master sino a un hash (igual que a refs/heads/master ).

¿Cuál sería el caso de uso, cuando realmente quisiera hacer eso?

De acuerdo con el compromiso que introdujo la bandera :

Por ejemplo, uno podría usar esto al hacer una combinación temporal para probar que dos temas funcionan bien juntos.

Supongo que la idea es que el despperformance deliberado te permita realizar más compromisos que sabes que se descartarán una vez que hayas terminado (y una vez que se haya ejecutado el GC).

Tenga en count que esta bandera en realidad no agrega ninguna funcionalidad nueva; podría get el mismo resultado anteriormente con git checkout some-branch^0 .