Bei einer Änderung, die mit commit
und dann zurückgesetzt mit revert
Wie kann ich diese Rückgängigmachung dann am besten rückgängig machen?
Idealerweise sollte dies mit einem neuen Commit geschehen, um die Geschichte nicht neu zu schreiben.
Bei einer Änderung, die mit commit
und dann zurückgesetzt mit revert
Wie kann ich diese Rückgängigmachung dann am besten rückgängig machen?
Idealerweise sollte dies mit einem neuen Commit geschehen, um die Geschichte nicht neu zu schreiben.
git cherry-pick <original commit sha>
Erstellt eine Kopie der ursprünglichen Übergabe und wendet die Übergabe im Wesentlichen erneut an
Die Rückgängigmachung der Rückgängigmachung bewirkt dasselbe, nur mit einer unübersichtlicheren Übergabemeldung:
git revert <commit sha of the revert>
Auf beiden Wegen können Sie git push
ohne die Historie zu überschreiben, da nach dem Revert ein neuer Commit erstellt wird.
Wenn Sie den Commit Sha eingeben, benötigen Sie normalerweise nur die ersten 5 oder 6 Zeichen:
git cherry-pick 6bfabc
Ein Revert-Commit ist genau wie jeder andere Commit in Git. Das heißt, Sie können ihn rückgängig machen, wie in:
git revert 648d7d808bc1bca6dbf72d93bf3da7c65a9bd746
Das macht natürlich erst Sinn, wenn die Änderungen gepusht wurden, und vor allem, wenn Sie den Push auf den Zielzweig nicht erzwingen können (was eine gute Idee für Ihre Meister Zweig). Wenn die Änderung nicht gepusht wurde, machen Sie einfach Cherry-Pick, Revert oder entfernen Sie einfach den Revert-Commit wie in anderen Beiträgen beschrieben.
In unserem Team haben wir die Regel, eine zurückkehren auf Revert Commits, die im Hauptzweig committed wurden, hauptsächlich um die Historie sauber zu halten, so dass Sie sehen können, welcher Commit was revertiert:
7963f4b2a9d Revert "Revert "OD-9033 parallel reporting configuration"
"This reverts commit a0e5e86d3b66cf206ae98a9c989f649eeba7965f.
...
a0e5e86d3b6 Revert "OD-9055 paralel reporting configuration"
This reverts commit 648d7d808bc1bca6dbf72d93bf3da7c65a9bd746.
...
Merge pull request parallel_reporting_dbs to master* commit
'648d7d808bc1bca6dbf72d93bf3da7c65a9bd746'
Auf diese Weise können Sie die Geschichte zurückverfolgen und die ganze Geschichte herausfinden, und auch diejenigen, die das Erbe nicht kennen, können es sich selbst erschließen. Wenn Sie hingegen . o neu gründen geht diese wertvolle Information verloren (es sei denn, Sie fügen sie in den Kommentar ein).
Wenn ein Commit mehr als einmal rückgängig gemacht und erneut rückgängig gemacht wird, wird das natürlich ziemlich chaotisch.
Wenn Sie versehentlich eine Rückgängigmachung durchgeführt haben:
git revert <commit-id>
müssen Sie einfach laufen:
git cherry-pick <commit-id>
Ich musste meine Änderungen mit diesem Befehl zur Verarbeitung übergeben.
Sie können die ID Ihrer Übertragungen abrufen, indem Sie diese ausführen:
git log --pretty=format:"%h - %an, %ar : %s"
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.