Optionen zum Abrufen von Änderungen
Diese Befehle sind bei der Interaktion mit einem Remoterepository sehr hilfreich. clone
und fetch
laden Remotecode über die Remote-URL eines Repositorys auf deinen lokalen Computer herunter. merge
wird verwendet, um die Arbeit verschiedener Personen mit deiner Arbeit zusammenzuführen, und pull
ist eine Kombination aus fetch
und merge
.
Ein Repository klonen
Verwende git clone
wie folgt, um eine vollständige Kopie eines Repositorys eines anderen Benutzers zu erhalten:
$ git clone https://HOSTNAME/USERNAME/REPOSITORY.git
# Clones a repository to your computer
Du kannst beim Klonen eines Repositorys unter verschiedenen URLs wählen. Während du bei GitHub angemeldet bist, sind diese URLs auf der Standardseite des Repositorys verfügbar, wenn du auf -Code klickst.
Mit git clone
werden die folgenden Aktionen ausgeführt:
- Ein neuer Ordner mit dem Namen
repo
wird erstellt. - Er wird als Git-Repository initialisiert.
- Ein Remoterepository mit dem Namen
origin
wird erstellt, und es verweist auf die URL, von der du den Klon erstellt hast. - Alle Dateien und Commits des Repository werden dorthin heruntergeladen.
- Der Standardbranch ist ausgecheckt.
Für jeden foo
-Branch im Remoterepository wird in deinem lokalen Repository ein entsprechender Remote-Tracking-Branch namens refs/remotes/origin/foo
erstellt. Normalerweise kannst du die Namen solcher Remote-Tracking-Branches in origin/foo
verkürzen.
Änderungen von einem Remote-Repository mit git fetch
abrufen
Verwende git fetch
, um neue Arbeiten anderer Benutzer abzurufen. Dabei werden alle neuen Remote-Tracking-Branches und Tags vom Repository abgerufen, ohne dass diese Änderungen mit deinen eigenen Branches zusammengeführt werden.
Wenn du bereits ein lokales Repository mit einer Remote-URL für das gewünschte Projekt eingerichtet hast, kannst du alle neuen Informationen mit git fetch *remotename*
über das Terminal abrufen:
$ git fetch REMOTE-NAME
# Fetches updates made to a remote repository
Andernfalls kannst du jederzeit eine neue Remote-URL hinzufügen und dann den Abruf starten. Weitere Informationen findest du unter Remote-Repositorys verwalten.
Änderungen in deinen lokalen Branch zusammenführen
Beim Zusammenführen (Merge) werden deine lokalen Änderungen mit den Änderungen anderer Benutzer zusammengeführt.
In der Regel führst du einen Remote-Tracking-Branch (d. h. einen Branch, der aus einem Remote-Repository abgerufen wurde) mit deinem lokalen Branch zusammen:
$ git merge REMOTE-NAME/BRANCH-NAME
# Merges updates made online with your local work
Änderungen von einem Remote-Repository mit git pull
abrufen
git pull
ist eine praktische, schnelle Lösung, um sowohl git fetch
als auch git merge
im selben Befehl auszuführen:
$ git pull REMOTE-NAME BRANCH-NAME
# Grabs online updates and merges them with your local work
Da pull
die abgerufenen Änderungen zusammenführt, solltest du sicherstellen, dass deine lokalen Änderungen committed wurden, bevor du den Befehl pull
ausführst. Wenn ein Mergekonflikt auftritt, den du nicht auflösen kannst, oder wenn du den Merge abbrechen möchtest, kannst du den Branch mit git merge --abort
in den Zustand vor dem Pull zurückversetzen.