Permítanme explicar algunos casos de uso de pago con archivo, carpeta y ramas para que pueda ser útil para comprender.
Digamos que tenemos una carpeta nombrada dev
y index.html
también se realiza un seguimiento de todo y el directorio de trabajo está limpio.
Si cambio accidentalmente el nombre del archivo index.html
y quiero deshacer eso, simplemente git checkout index.html
lo usaré, recuperará el estado del archivo de la rama actualmente seleccionada del repositorio.
Ahora, si hice algún cambio en la dev
carpeta y quiero recuperarlo. Puedo usarlo, git checkout dev
pero ¿qué pasa si ya hay una rama nombrada en dev
lugar de verificar esa carpeta? Para evitar eso, preferiría hacerlo git checkout -- dev
.
Ahora aquí, el doble guión desnudo representa la rama actual y le pide a git la carpeta dev
de la rama seleccionada actualmente.
De manera similar, si lo hago git checkout alpha dev
, desplegará la carpeta dev de la rama alfa.
Esta respuesta es para su primera pregunta 'git checkout realmente significa'.