¿Cómo reemploop un file dañado usando un repository git?

He estado teniendo problemas con VS2013 corrompiendo mi file Program.cs (vea esta pregunta ), así que configuré un repository de Git y comprometí una versión de mi proyecto. Efectivamente, cuando abrí el proyecto hoy, Program.cs estaba corrupto.

Así que supongo que necesito extraer la versión de trabajo de Program.cs del repository y replace la versión dañada por esta limpia. He estado tratando de aprender a usar Git leyendo Pro Git , pero hasta ahora no he descubierto cómo hacerlo. Extrañamente, cuando ejecuto el git status , no hay una list de modified: Program.cs en "Cambios no realizados para commit:". Veo modified: Relinker.v12.suo . Sé que todos los files .cs del proyecto están siendo rastreados, porque después de agregar datos a cualquier otro file .cs, save los cambios y volver a ejecutar el git status , el file termina mostrando como modified:

Lo siento si esta es una pregunta confusa. Solo estoy tratando de entender el control de código fuente, averiguar qué está pasando con este file dañado y restaurar una buena versión del file.

Puede revertir el estado del espacio de trabajo de su copy de trabajo de git a la confirmación actualmente "activa" (también conocida como HEAD) ejecutando:

 git checkout HEAD -- . 

El command aquí sigue la syntax:

 git checkout [refspec] -- [path] 

HEAD se expandirá para apuntar a la revisión activa actualmente (como ya se mencionó).

Si solo desea cambiar un solo file, use:

 git checkout HEAD -- path/to/file