Revertir todo el repository de git a una versión específica

Tengo un repository git al que me comprometo desde el desarrollo y desde la testing y la producción.

Digamos que hice 17 commits hasta el momento, y todos los serveres están sincronizados.
Ahora quiero volver a cometer el # 15 en la producción, pero no solo en un (pocos) file (s) : Quiero que todos los files en mi server de producción reflejen la confirmación # 15.

También prefiero no crear un compromiso nuevo para esto, y también poder avanzar al último compromiso, u otros del repository central.

Mi primera suposition es ejecutarlo sin declarar ningún file, por ejemplo,

git checkout [commit-15-SHA1] 

¿Hay un mejor / más seguro para hacerlo? ¿Cuál es el path de Git ?

Si desea revertir, y luego bifurcar desde la confirmación # 15, manteniendo todas las revisiones DESPUÉS de confirmar # 15 intactas, la suya es un buen enfoque.

 git checkout [Commit-15-SHA] 

Si solo desea hacer una "copy de security" en el historial de confirmaciones, sin perder los cambios actuales y las dos confirmaciones más recientes, intente realizar un restablecimiento parcial.

 git reset --soft [Commit-15-SHA] 

Sin embargo, si quiere destruir todo lo que ha cambiado, incluidas todas las revisiones DESPUÉS de confirmar 15, entonces realiza un restablecimiento completo.

 git reset --hard [Commit-15-SHA] 

Lea más sobre reinicio de git aquí .