2014-05-24 5 views
9

Ich arbeite seit einiger Zeit am Master-Zweig in meinem Git-Repository. Es wird auf GitHub gehostet und auf zwei meiner Computer geklont. Jetzt habe ich einen neuen Zweig auf einem Computer gestartet und ihn nach GitHub geschoben. Jetzt kennen sie beide Zweige, aber der andere Computer kennt nur den Master-Zweig und nicht den Feature-Zweig.Wie kann ich eine neue Remote-Zweigstelle ohne Zusammenführung herunterladen?

Wenn ich versuche, den Feature-Zweig von GitHub zu ziehen, wird Git es in meinen Master zusammenführen, was ich nicht will.

Wie kann ich den Feature-Zweig von GitHub in mein lokales Repository herunterladen und am Ende die beiden Zweige und keine Zusammenführung haben? Ich werde sie zusammenführen, wenn es fertig ist, nicht jetzt.

Wenn möglich, interessiert mich, was ich mit TortoiseGit machen soll.

+0

"Git wird es zu meinem Meister verschmelzen" - wenn es das tut, dann passiert etwas Seltsames. –

+0

Duplikat von [Was ist der Unterschied zwischen 'git pull' und 'git fetch'?] (Http://stackoverflow.com/questions/292357/whats-the-difference-between-git-pull-and-git-fetch) –

+2

@Cupcake: Diese Frage kann nur ein Duplikat davon sein * nachdem * du die Antwort auf die Frage kennst. Es war mir nicht klar, dass ich 'holen' brauche, damit ich die andere Frage nicht finden konnte. – ygoe

Antwort

13

Sie können git fetch origin in der Befehlszeile ausführen. Dadurch wird Ihre lokale Kopie aktualisiert, sodass sie über den neuen Zweig informiert ist. Wenn Sie dann den neuen Zweig auschecken möchten, sollte einfach git checkout BRANCHNAME die Fernbedienung verfolgen.

+0

Vielen Dank, Ihre Antworten waren genauso hilfreich und ich muss mich für eine Entscheidung entscheiden. Über TortoiseGit: Ich musste den Befehl Fetch aus dem Kontextmenü verwenden. Dadurch entstand der entfernte Zweig, zu dem ich dann wechseln konnte. Das Verwenden des Fetch-Befehls in dem Synchronisierungsdialog tat das nicht, da es die Master-Verzweigung explizit zu der Befehlszeile hinzufügte. – ygoe

5

A git fetch würde nichts fusionieren:

git fetch 
git checkout -b yourSecondBranch origin/yourSecondBranch 
# or simpler, since git 1.6+: 
git checkout yourSecondBranch 

(Here I durch Standard holen die Fern 'Ursprung', die die GitHub Repo-Referenz sollte)

Mehr unter "git checkout remote branch"

Verwandte Themen