Git: beliebige alte Version zur aktuellen Master-Branch-Version machen

Das Problem:
Letztens war es notwendig in einem Git-Projekt auf eine alte Version zurückzugehen und diese als den aktuellen Stand im Master-Branch zu machen.

Die Situation:
Aufgrund der Infrastruktur unserer Projekte war es mir nicht möglich einfach einen neuen Branch aufzumachen und diesen zu verwenden. Diverse Automatismen sorgen dafür, dass unser Master-Branch alleine dafür verantwortlich ist, den Live-Server zu beliefern. Normalerweise gibt es bei uns auch einen Develop-Branch, der den Test-Server beliefert und auf dem getestet wird. In diesem speziellen Projekt fällt dieser Branch weg – aus „Gründen“.

Ich habe inzwischen an zig Git-Projekten gearbeitet und durch die Möglichkeit sowohl lokal als auch auf einem Testserver testen zu können, bevor Änderungen in den Master-Branch fliessen (und somit gleich auf den Live-Server), hatte ich nie wirklich die Notwendigkeit gesehen, komplett auf einen alten Versionsstand zurückzugehen. Bis gestern.

Die Lösung:
Ich musste ein wenig im Internet suchen und habe etliche Lösungsansätze gesehen, die alle nicht zu der gewünschten Lösung führten. Irgendwo auf stackoverflow.com – gut versteckt zwischen vielen Antworten auf genau meine Frage – bin ich dann auf die Lösung gestossen. Und die ist eigentlich ziemlich einfach:

git revert --no-commit id_alte_version..HEAD
git commit -m "zurück zu (ur-)alter version"