Benutzer-Werkzeuge

Webseiten-Werkzeuge


tools:git

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
tools:git [2018/03/08 20:34]
admin git rm --cached
tools:git [2018/10/19 20:06] (aktuell)
admin [Vorherigen commit "löschen"]
Zeile 4: Zeile 4:
  
 Eine gute Anleitung ist auf der [[http://​www.bk2k.info/​zeige/​website-deployment-mit-git.html|Website von Benjamin Kott]] zu finden. Eine gute Anleitung ist auf der [[http://​www.bk2k.info/​zeige/​website-deployment-mit-git.html|Website von Benjamin Kott]] zu finden.
 +
 +----
  
 ===== Befehle ===== ===== Befehle =====
Zeile 17: Zeile 19:
 </​code>​ </​code>​
  
 +==== Letzten commit "​löschen"​ ====
 +
 +Mit diesem Befehl wird der Branch auf den vorletzten Commit zurückgesetzt. Der letzte Commit ist in diesem Branch dann nicht mehr vorhanden.
 +
 +<​code>​
 +git reset --hard HEAD^
 +</​code>​
 +
 +==== Vorherigen commit "​löschen"​ ====
 +
 +Wenn nicht der letzte, sondern einer der vorherigen Commits aus der Historie entfernt werden muss, kann man ''​git cherry-pick''​ verwenden:
 +
 +**git-Historie:​**
 +<​code>​
 +b257cb2 ​ -- [HEAD] ​   [TASK] Der neueste Commit; soll behalten werden
 +d26c6b7 ​ -- [HEAD^] ​  ​[MESSED-UP] Dieser Commit muss gelöscht werden!
 +522d6c5 ​ -- [HEAD^^] ​ [FEATURE] Letzter sauberer Stand vor dem Problem
 +</​code>​
 +
 +**Anleitung:​**
 +<​code>​
 +# 1. Den Commit vor dem zu entfernenden Commit in der Historie suchen (z.B. 522d6c5):
 +git log --oneline
 +
 +# 2. Neuen Branch anlegen mit dem letzten sauberen Stand:
 +git checkout -b tempfix 522d6c5
 +
 +# 3. Nun im neuen Branch alle Commits selektiv hinzufügen,​
 +#    die nach dem Problem-Commit folgten und behalten werden sollen:
 +git cherry-pick b257cb2
 +
 +# 4. Wechsel auf den alten, fehlerhaften Branch:
 +git checkout <​branch>​
 +
 +# 5. Hard reset auf den letzten sauberen Stand:
 +git reset --hard 522d6c5
 +
 +# 6. Die mit cherry-pick in den neuen Branch übernommenen Commits mergen:
 +git merge tempfix
 +</​code>​
 ==== Datei aus Index entfernen, ohne sie zu löschen ==== ==== Datei aus Index entfernen, ohne sie zu löschen ====
  
Zeile 24: Zeile 66:
 git rm --cached example.txt ​ git rm --cached example.txt ​
 </​code>​ </​code>​
 +
 +----
 ===== Fehlerbehebung ===== ===== Fehlerbehebung =====
  
tools/git.1520537692.txt.gz · Zuletzt geändert: 2018/03/08 20:34 von admin