4079 Stimmen

Ändern Sie einen vorhandenen Git-Zweig so, dass er einem Remote-Zweig folgt?

Ich weiß, wie man einen neuen Branch erstellt, der Remote-Branches verfolgt, aber wie mache ich einen vorhandenen Branch zu einem Remote-Branch?

Ich weiß, ich kann einfach die .git/config Datei bearbeiten, aber es scheint, dass es einen einfacheren Weg geben sollte.

32 Stimmen

Wie unten angegeben, können Sie für einen vorhandenen Branch git push -u origin branch-name verwenden.

6 Stimmen

Wenn der lokale Branch der aktuelle Branch ist und der lokale Branch noch nicht einem Remote-Branch folgt, git pull gibt oft hilfreiche Nachrichten über den geeigneten Befehl zur Festlegung von Tracking-Informationen.

94 Stimmen

Es ist ärgerlich, wenn man Git lernt und einen Link zur Git-Dokumentation angezeigt bekommt. Diese Dokumentation scheint für Leute geschrieben zu sein, die bereits wissen, was sie mit Git machen.

18voto

wik Punkte 2412

Für 1.6.x kann dies mit dem git_remote_branch Tool durchgeführt werden:

grb track foo upstream

Dadurch wird Git veranlasst, dass foo upstream/foo verfolgt.

18voto

yrazlik Punkte 9603

Ich benutze den folgenden Befehl (Angenommen, dein lokaler Branch-Name ist "branch-name-local" und der Remote-Branch-Name ist "branch-name-remote"):

$ git branch --set-upstream-to=origin/branch-name-remote branch-name-local

Wenn sowohl der lokale als auch der Remote-Branch den gleichen Namen haben, dann mache einfach folgendes:

$ git branch --set-upstream-to=origin/branch-name branch-name

12voto

jithu reddy Punkte 479

Für die Erstellung einer neuen Zweigstelle könnten wir den folgenden Befehl verwenden

 git checkout --track -b Beispiel origin/Beispiel Für den bereits erstellten Zweig, um eine Verbindung zum Remote herzustellen, verwenden Sie dann den folgenden Befehl  

 git branch -u Ursprung/Remote-Zweigname

10voto

Loukan ElKadi Punkte 2267

Verwenden Sie die '--track' Option

  • Nach einem git pull :

    git checkout --track

  • Oder:

    git fetch && git checkout

9voto

DrBeco Punkte 10444

Hier, unter Verwendung von github und git Version 2.1.4, einfach folgendes machen:

$ git clone git@github.com:user/repo.git

Und Remotes kommen von selbst, auch wenn sie lokal nicht verlinkt sind:

$ git remote show origin

* remote origin
  Fetch URL: git@github.com:user/repo.git
  Push  URL: git@github.com:user/repo.git
  HEAD Branch: master
  Remote Branches:
    develop verfolgt         <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    master  verfolgt
  Lokaler Branch konfiguriert für 'git pull':
    master fusioniert mit Remote-Master
  Lokaler Ref konfiguriert für 'git push':
    master pusht nach master (aktuell)

Aber natürlich immer noch kein lokaler Branch:

$ git branch
* master                  <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

Verstanden? Wenn du einfach nur zu develop wechselst, passiert das automatisch:

$ git checkout develop
Branch develop wurde eingerichtet, um den Remote-Branch develop von origin zu verfolgen.
Zu neuem Branch 'develop' gewechselt

So einfach!


Zusammenfassung. Führe einfach diese 2 Befehle aus:

$ git clone git@github.com:user/repo.git
$ git checkout develop

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X