
Andreas
Ich habe ein Projekt, das auf GitHub gehostet wird. Ich habe auf einem Computer einen Branch erstellt und dann meine Änderungen an GitHub gepusht mit:
git push origin branch-name
Jetzt bin ich auf einem anderen Computer und möchte diesen Zweig herunterladen. Also habe ich versucht:
git pull origin branch-name
… aber alles, was dies bewirkte, war, meinen Master-Zweig mit den Änderungen in meinem neuen Zweig zu überschreiben.
Was muss ich tun, um meinen Remote-Zweig ordnungsgemäß abzurufen, ohne vorhandene Zweige zu überschreiben?

Andreas
Dank einer verwandten Frage habe ich herausgefunden, dass ich die entfernte Verzweigung als neue lokale Verzweigung “auschecken” und einen neuen lokalen Verzweigungsnamen angeben muss.
git checkout -b newlocalbranchname origin/branch-name
Oder Sie können Folgendes tun:
git checkout -t origin/branch-name
Letzteres erstellt einen Zweig, der auch so eingestellt ist, dass er den Remote-Zweig verfolgt.
Aktualisieren: Es ist 5 Jahre her, seit ich diese Frage ursprünglich gepostet habe. Ich habe viel gelernt und git hat sich seitdem verbessert. Mein gewohnter Arbeitsablauf ist jetzt etwas anders.
Wenn ich die entfernten Branches abrufen möchte, führe ich einfach Folgendes aus:
git pull
Dadurch werden alle Remote-Zweige abgerufen und der aktuelle Zweig zusammengeführt. Es wird eine Ausgabe angezeigt, die in etwa so aussieht:
From github.com:andrewhavens/example-project
dbd07ad..4316d29 master -> origin/master
* [new branch] production -> origin/production
* [new branch] my-bugfix-branch -> origin/my-bugfix-branch
First, rewinding head to replay your work on top of it...
Fast-forwarded master to 4316d296c55ac2e13992a22161fc327944bcf5b8.
Jetzt weiß Git von meinem neuen my-bugfix-branch
. Um zu diesem Zweig zu wechseln, kann ich einfach Folgendes ausführen:
git checkout my-bugfix-branch
Normalerweise müsste ich den Branch erstellen, bevor ich ihn auschecken könnte, aber in neueren Git-Versionen ist er schlau genug, um zu wissen, dass Sie es wollen Kasse eine lokale Kopie dieses entfernten Zweigs.
Für alle Git-Neulinge wie mich sind hier einige Schritte, die Sie befolgen können, um ein Remote-Repository herunterzuladen und dann zu dem Zweig zu wechseln, den Sie anzeigen möchten. Wahrscheinlich missbrauchen sie Git auf irgendeine Weise, aber für mich hat es funktioniert! 🙂
Klonen Sie das Repository, für das Sie den Code herunterladen möchten (in diesem Beispiel habe ich die LR Resty-Projekt auf Github):
$ git clone https://github.com/lukeredpath/LRResty.git
$ cd LRResty
Überprüfen Sie, welchen Branch Sie an dieser Stelle verwenden (es sollte der Master-Branch sein):
$ git branch
* master
Schauen Sie sich den gewünschten Zweig an, in meinem Fall heißt er “arcified”:
$ git checkout -b arcified origin/arcified
Branch arcified set up to track remote branch arcified from origin.
Switched to a new branch 'arcified'
Bestätigen Sie, dass Sie jetzt den gewünschten Zweig verwenden:
$ git branch
* arcified
master
Wenn Sie den Code später erneut aktualisieren möchten, führen Sie ihn aus git pull
:
$ git pull
Already up-to-date.
Sie können verwenden:
git clone <url> --branch <branch>
um nur den Inhalt des Zweigs zu klonen/herunterzuladen.
Dies war für mich besonders hilfreich, da die Inhalte meines Zweigs völlig anders waren als die des Hauptzweigs (obwohl dies normalerweise nicht der Fall ist). Daher haben mir die von anderen oben aufgeführten Vorschläge nicht geholfen, und ich würde am Ende eine Kopie des Masters erhalten, selbst nachdem ich den Zweig ausgecheckt und einen Git-Pull durchgeführt hatte.
Dieser Befehl würde Ihnen direkt den Inhalt des Zweigs liefern. Es hat für mich funktioniert.

ardsrk
Sie könnten git remote wie folgt verwenden:
git fetch origin
und richten Sie dann einen lokalen Zweig ein, um den Remote-Zweig wie folgt zu verfolgen:
git branch --track [local-branch-name] origin/remote-branch-name
Sie hätten jetzt den Inhalt des Remote-Github-Zweigs in local-branch-name.
Sie könnten zu diesem lokalen Zweignamen wechseln und mit der Arbeit beginnen:
git checkout [local-branch-name]

Srikanta Sahoo
Navigieren Sie zu dem Ordner auf Ihrem neuen Computer, den Sie von git auf git bash herunterladen möchten.
Verwenden Sie den folgenden Befehl, um den Code von einem beliebigen Zweig herunterzuladen
git clone 'git ssh url' -b 'Branch Name'
Es lädt den jeweiligen Filialcode herunter.

Pablo Ezequiel Inchausti
Git-Klon und CD im Repo-Namen:
$ git clone https://github.com/PabloEzequiel/iOS-AppleWach.git
Cloning into 'iOS-AppleWach'...
$ cd iOS-AppleWach
Wechseln Sie zu dem Zweig (einer GitHub-Seite), den ich möchte:
$ git checkout -b gh-pages origin/gh-pages
Branch gh-pages set up to track remote branch gh-pages from origin.
Switched to a new branch 'gh-pages'
Und den Ast ziehen:
$ git pull
Already up-to-date.
ls:
$ ls
index.html params.json stylesheets

Aditya Jain
$ git fetch
$ git checkout <branch>
git fetch
ruft alle entfernten Zweige ab. Sie können die Remote-Zweige mit überprüfen git branch -r
(oder git branch -rv
) Wenn Sie keinen bestehenden Zweig mit demselben Namen haben, können Sie einfach mit direkt zu dem Zweig wechseln git checkout <branch>
10118300cookie-checkWie lade ich einen Branch mit Git herunter?yes