GitHub add, comit, push?
Ich fange gerade damit an mit GitHub zu arbeiten und frage mich, warum das hochladen veränderter Datein in ein repository so umständlich ist.
Zwei Befehle würden mir ja einleuchten, so dass man Dateien, die man "commited" hat nocheinmal korrigieren kann, bevor man sie mit dem push-Befehl hochlädt.
Aber warum gibt es add und comit? Hat das technische Gründe?
5 Antworten
Mit git add wählst du aus, was genau du hochladen willst. Merk dir diese drei Schritte:
- Auswählen der Dateien die du hochladen möchtest:
git add . ( . = Alle Dateien im Ordner)
- Danach Commiten der gerade ausgewählten Dateien:
git commit -m "Text"
- Dann pushen
git push origin master
Add heißt, dass du etwas zu deinem aktuellen Stash hinzufügst und Commit eben die Änderung abschließt, also den Stash. Mit push schickst du alles auf den Remote.
Bei git add kannst du die Dateien wählen, die du zum Commit hinzufügen möchtest. Wenn du eh den kompletten tree commiten möchtest, dann kannst du es auch mit einem einzigen Befehl erledigen, nämlich commit -am.
Mit git add werden Dateien, die man vorher lokal hinzugefügt oder geändert hat, in das Änderungspaket gepackt. Mit git commit kommt dann auf das Paket ein Schild mit dem Text. Mit git push wird das Änderungspaket dann hochgeladen.
Manchmal macht es auch Sinn, nur bestimmte Files zu aktualisieren, etwa weil der andere Teil noch nicht fertig ist.
git pull
git add -A
git checkout
git commit -m 'commit name'
git push origin master