Git
Mit Remotes arbeiten
Suche…
Syntax
-
git remote [-v | --verbose]
-
git remote add [-t <branch>] [-m <master>] [-f] [--[no-]tags] [--mirror=<fetch|push>] <name> <url>
-
git remote rename <old> <new>
-
git remote remove <name>
-
git remote set-head <name> (-a | --auto | -d | --delete | <branch>)
-
git remote set-branches [--add] <name> <branch>…
-
git remote get-url [--push] [--all] <name>
-
git remote set-url [--push] <name> <newurl> [<oldurl>]
-
git remote set-url --add [--push] <name> <newurl>
-
git remote set-url --delete [--push] <name> <url>
-
git remote [-v | --verbose] show [-n] <name>…
-
git remote prune [-n | --dry-run] <name>…
-
git remote [-v | --verbose] update [-p | --prune] [(<group> | <remote>)…]
Neues Remote-Repository hinzufügen
git remote add upstream git-repository-url
Fügt dem durch " git-repository-url
neuen git-repository-url
Namen "new" mit dem Namen " upstream
zum git-Repository hinzu
Aktualisierung aus dem Upstream-Repository
Vorausgesetzt, Sie setzen den Upstream (wie im Abschnitt "Ein Upstream-Repository festlegen").
git fetch remote-name
git merge remote-name/branch-name
Der pull
Befehl kombiniert einen fetch
und eine merge
.
git pull
Der Befehl zum pull
mit --rebase
flag kombiniert einen fetch
und eine rebase
anstelle von merge
.
git pull --rebase remote-name branch-name
ls-remote
git ls-remote
ist ein eindeutiger Befehl, mit dem Sie ein Remote-Repo abfragen können, ohne es vorher zu klonen / abzurufen .
Es werden Refs / Heads und Refs / Tags des Remote-Repos aufgelistet.
Manchmal sehen Sie refs/tags/v0.1.6
und refs/tags/v0.1.6^{}
: das ^{}
um das dereferenzierte annotierte Tag refs/tags/v0.1.6^{}
(dh das Commit, auf das das Tag zeigt)
Seit git 2.8 (März 2016) können Sie diesen doppelten Eintrag für ein Tag vermeiden und diese dereferenced Tags direkt auflisten mit:
git ls-remote --ref
Es kann auch helfen, die tatsächliche URL, die von einem Remote-Repo verwendet wird, aufzulösen, wenn Sie die url.<base>.insteadOf
" url.<base>.insteadOf
" haben.
Wenn git remote --get-url <aremotename>
https://server.com/user/repo zurückgibt, haben Sie git config url.ssh://[email protected]:.insteadOf https://server.com/
:
git ls-remote --get-url <aremotename>
ssh://[email protected]:user/repo
Löschen einer Remote Branch
So löschen Sie einen Remote-Zweig in Git:
git push [remote-name] --delete [branch-name]
oder
git push [remote-name] :[branch-name]
Lokale Kopien von gelöschten Remote-Filialen entfernen
Wenn eine entfernte Verzweigung gelöscht wurde, muss Ihr lokales Repository aufgefordert werden, die Referenz darauf zu beschneiden.
Löschen Sie gelöschte Zweige von einer bestimmten Fernbedienung aus:
git fetch [remote-name] --prune
Gelöschte Zweige aus allen Fernbedienungen beschneiden:
git fetch --all --prune
Zeigt Informationen zu einer bestimmten Fernbedienung an
Informationen zu einer bekannten Fernbedienung ausgeben: origin
git remote show origin
Nur die URL der Fernbedienung drucken:
git config --get remote.origin.url
Mit 2.7+ ist es auch möglich, was besser ist als das oben genannte, das den Befehl config
.
git remote get-url origin
Vorhandene Remotes auflisten
Listen Sie alle vorhandenen Remotes auf, die mit diesem Repository verbunden sind:
git remote
Listen Sie alle vorhandenen Remotes, die diesem Repository zugeordnet sind, detailliert auf, einschließlich der fetch
und push
URLs:
git remote --verbose
oder einfach
git remote -v
Fertig machen
Syntax für das Pushing an einen entfernten Zweig
git push <remote_name> <branch_name>
Beispiel
git push origin master
Setze Upstream in einem neuen Zweig
Sie können einen neuen Zweig erstellen und mit wechseln
git checkout -b AP-57
Nachdem Sie mit git checkout einen neuen Zweig erstellt haben, müssen Sie diesen Ursprungsursprung für die Verwendung festlegen
git push --set-upstream origin AP-57
Danach können Sie git push verwenden, während Sie sich in diesem Zweig befinden.
Remote-Repository ändern
Um die URL des Repositorys zu ändern, auf das Ihre Remote set-url
verweisen soll, können Sie die set-url
Option wie folgt verwenden:
git remote set-url <remote_name> <remote_repository_url>
Beispiel:
git remote set-url heroku https://git.heroku.com/fictional-remote-repository.git
Git Remote URL ändern
Vorhandene Fernbedienung prüfen
git remote -v
# origin https://github.com/username/repo.git (fetch)
# origin https://github.com/usernam/repo.git (push)
Repository-URL ändern
git remote set-url origin https://github.com/username/repo2.git
# Change the 'origin' remote's URL
Überprüfen Sie die neue Remote-URL
git remote -v
# origin https://github.com/username/repo2.git (fetch)
# origin https://github.com/username/repo2.git (push)
Umbenennen einer Fernbedienung
Verwenden Sie zum Umbenennen der Fernbedienung den Befehl git remote rename
Der Befehl git remote rename
erfordert zwei Argumente:
- Ein vorhandener Remote-Name, zum Beispiel: Ursprung
- Ein neuer Name für die Fernbedienung, zum Beispiel: destination
Bestehenden Remote-Namen abrufen
git remote
# origin
Vorhandene Remote mit URL überprüfen
git remote -v
# origin https://github.com/username/repo.git (fetch)
# origin https://github.com/usernam/repo.git (push)
Remote umbenennen
git remote rename origin destination
# Change remote name from 'origin' to 'destination'
Überprüfen Sie den neuen Namen
git remote -v
# destination https://github.com/username/repo.git (fetch)
# destination https://github.com/usernam/repo.git (push)
=== Mögliche Fehler ===
Konfig-Abschnitt 'remote. [Alter Name]' konnte nicht in 'remote. [Neuer Name]'
Dieser Fehler bedeutet, dass die Fernbedienung, die Sie mit dem alten Namen ( Ursprung ) versucht haben, nicht vorhanden ist.
Remote [neuer Name] ist bereits vorhanden.
Fehlermeldung ist selbsterklärend.
Legen Sie die URL für eine bestimmte Fernbedienung fest
Sie können die URL einer vorhandenen Fernbedienung mit dem Befehl ändern
git remote set-url remote-name url
Rufen Sie die URL für eine bestimmte Fernbedienung ab
Sie können die URL für eine vorhandene Remote-Einheit mit dem Befehl erhalten
git remote get-url <name>
Standardmäßig ist dies der Fall
git remote get-url origin