Git Upstream-Zweig einrichten
In diesem Artikel wird erläutert, wie Sie eine Beziehung zwischen der lokalen Verzweigung und der Remote-Verzweigung einrichten.
Git ruft set upstream
auf, um diese Art von Beziehung herzustellen.
Der lokale Zweig wird Tracking-Zweig genannt, der von ihm verfolgte Zweig – der Remote-Zweig wird upstream
-Zweig genannt.
Der Zweck des Upstream-Settings besteht darin, git push
und git pull
einfacher zu machen.
Stellen Sie sich vor, Sie haben einen langen Branch-Namen wie diesen, feature/a-long-long-branch-for-feature-A
.
Ohne den Upstream-Branch zu setzen, müssen Sie git push
explizit mit dem Branch-Namen ausführen.
z.B:
git push origin feature/a-long-long-branch-for-feature-A
Es ist kürzer und Sie können den Branch-Namen, an dem Sie gerade arbeiten, nach dem Einrichten des Upstream-Branch loswerden.
Einfach git push
ausführen, sauber und einfach.
Um Upstream einzurichten, wenn der Remote-Zweig noch nicht erstellt wurde, verwenden Sie die Option --set-upstream-to
zusammen mit dem Befehl git push
.
git push --set-upstream-to origin <branch_name>
Oder seine kürzere Version,
git push -u origin <branch_name>
$ git push -u origin master
Enumerating objects: 17, done.
...
remote: Create a pull request for 'master' on GitHub by visiting:
...
To github.com:username/repo_name.git
* [new branch] master -> master
Branch 'master' set up to track remote branch 'master' from 'origin'.
Verwenden Sie den folgenden Befehl, um Upstream einzurichten, wenn der Remote-Zweig bereits vorhanden ist.
git branch --set-upstream-to origin/<branch_name>
Oder,
git branch -u origin/<branch_name>
Beispielsweise,
$ git branch -u origin/master
Branch 'master' set up to track remote branch 'master' from 'origin'.
Ein weiterer Vorteil der Upstream-Einrichtung besteht darin, die nicht synchronisierten Commits zwischen den lokalen und den entfernten Zweigen anzuzeigen.
$ git branch -u origin/master
Branch 'master' set up to track remote branch 'master' from 'origin'.
$ touch file.txt
$ git add file.txt && git commit -m 'Add file.txt'
$ git status
On branch master
Your branch is ahead of 'origin/master' by 1 commit.
(use "git push" to publish your local commits)
Um den Upstream zu deaktivieren, verwenden Sie git branch --unset-upstream
; dann zeigt git status
die zusätzlichen Informationen nicht an.
$ git branch --unset-upstream
$ git status
On branch master
nothing to commit, working tree clean
Verwandter Artikel - Git Remote
- Entfernen Sie das Upstream-Repository in Git
- Erstellen Sie ein Remote-Repository aus einem lokalen Repository in Git
- Git Remote SSH hinzufügen
- Remote-Zweig in Git hinzufügen
- Synchronisieren Sie ein lokales Repository mit einem Remote-Repository in Git
- Informationen zum Remote-Repository in Git anzeigen