Git no puede revertir: Encontró un file de intercambio "COMMIT_EDITMSG.swp"

Estoy usando git en Visual Studio 2013. Estoy tratando de volver a una confirmación específica sin perder el historial que lleva de esa confirmación a la confirmación actual. En otras palabras, quiero que git genere una nueva confirmación que tenga la misma instantánea que la confirmación especificada. Esto es lo que hice:

git revert <commit> 

donde <commit> es el id del commit que bash revertir.

La ejecución de lo anterior (en el símbolo del sistema de git de Visual Studio) produjo el siguiente error:

Encontré un file de intercambio con el nombre ".git \ .COMMIT_EDITMSG.swp" al abrir el file ".git \ .COMMIT_EDITMSG.swp" ¡MÁS nuevo que el file de intercambio!

y eso

¡El file de intercambio ".git \ .COMMIT_EDITMSG.swp" ya existe!

No puedo entender lo que significa. ¿Lo hice mal? ¿Cómo se supone que volveré a un compromiso específico?

El file de intercambio lo crea el editor vim cuando comienza a editar un file; esencialmente es un file de respaldo en caso de que el editor falle.

Ahora, si el editor inicia y encuentra un file de intercambio, por lo general le pedirá que decida qué hacer, si restaurar la session anterior del editor o descartar esos cambios.

Si no te importa eso, puedes eliminar el file de intercambio antes de abrir el editor:

 rm .git/.COMMIT_EDITMSG.swp 

Esto debería eliminar el file de intercambio, por lo que la próxima vez que se inicie el editor, ya no recibirá ese post y puede funcionar como siempre.