¿Cuál es la diferencia entre "git checkout" y "git checkout -"?

Cuando bajo git modificas algunos files, usando el git status , sale el siguiente post:

 On branch dev Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: script.php 

Así que solía usar git checkout -- script.php para deshacer mis ediciones, como se sugiere.

Encontré de todos modos, de un colega, que el git checkout script.php parece lograr el mismo resultado.

Entonces, mi pregunta es: ¿son git checkout -- script.php y git checkout script.php sinónimos, o no?

Proporcione al less un enlace a cierta documentation que pruebe lo que ha dicho. ¡Gracias!

Si tiene una label o una twig llamada script.php , entonces git checkout script.php revisará esa label o twig, mientras que git checkout -- script.php searchá el file en la twig actual.