Wenn der Name des Remote-Zweigs mit Sonderzeichen beginnt, müssen Sie einfache Anführungszeichen verwenden, um ihn im Checkout-Befehl zu umschließen, sonst wird Git nicht wissen, um welchen Zweig es sich handelt.
Zum Beispiel habe ich versucht, einen Remote-Zweig namens #9773
auszuchecken, aber der Befehl hat nicht richtig funktioniert, wie im Bild unten gezeigt:
Aus irgendeinem Grund fragte ich mich, ob das Doppelkreuzsymbol (#) damit etwas zu tun haben könnte, und dann habe ich versucht, den Zweignamen mit einfachen Anführungszeichen zu umgeben, wie '#9773'
anstatt nur #9773
, und glücklicherweise hat es gut funktioniert.
git checkout -b '#9773' origin/'#9773'
52 Stimmen
Ich denke, dieser Thread ist nicht hilfreich. Nichts scheint zu funktionieren, die ursprüngliche Frage scheint in vielen der Antworten verloren gegangen zu sein. Ich habe jedes Wort gelesen, alles unten ausprobiert und habe keine Ahnung, wie man das machen soll, was der OP machen möchte.
58 Stimmen
Ich habe das Gefühl, als würde ich verrückt werden. Ich versuche, einen branch von einem
upstream
und nicht nur vonorigin
zu auszuchecken, und jede empfohlene Antwort ist überhaupt nicht hilfreich (im wahrsten Sinne des Wortes). EDIT - entschuldigen Sie bitte, die Vielzahl der Vorschläge in den beiden erstplatzierten Antworten war nutzlos; der dritte (git branch test origin/test
) funktioniert. Schön, dass die beiden ersten Antworten 20x so viele Stimmen haben...0 Stimmen
Vielleicht nützlich für jemand anderen: Als ich die Atom-Editor-Benutzeroberfläche benutzte, um Änderungen abzurufen und zu ziehen, zog sie Änderungen am "main" branch, aber erstellte keine lokale Referenz zum zweiten Remote-Branch. Die Verwendung von
git fetch
in der Befehlszeile hat diese Referenz erstellt, dann konnte ich den Branch gemäß mehrerer Antworten auschecken.0 Stimmen
Aus der ersten Antwort, wenn es nur ein Remote gibt, funktioniert Folgendes: git fetch, gefolgt von git switch test
0 Stimmen
Dieses Frage muss umbenannt werden, sie ist schlecht ausgerichtet mit dem Inhalt und Google-Bombs andere Fragen auf SO, die das Thema besser behandeln (z.B. jede Antwort hier hat bei mir versagt - aber sie beantworten alle verschiedene Interpretationen der Frage, also ist das keine Überraschung). Für zukünftige Leser: Tun Sie nichts in dieser SO-Frage/Antworten! Schließen Sie diesen Tab und suchen Sie erneut auf SO, finden Sie eine andere Frage zum selben Thema.
10 Stimmen
git fetch
danngit switch
1 Stimmen
Zumindest im modernen (2022) git-Kontext wäre der Befehl
git fetch origin test
vorgit checkout origin/test
erforderlich.0 Stimmen
Für mich hat das geholfen: stackoverflow.com/a/25941875/38940
5 Stimmen
Diese Antwort sollte archiviert werden. Es ist nicht nützlich, Leuten Antworten zu zeigen, die so alt sind. Stackoverflow sollte einen aktualisierten Antwort-Button haben.
0 Stimmen
Was ich heute gemacht habe: Ich habe einen weiteren Branch-Test von einer anderen Maschine erstellt, auf die ich einen Remote-Branch gepusht habe. Aus irgendeinem Grund kann ich nicht mehr auf diese Maschine zugreifen, und ich habe von einer anderen Maschine aus "git checkout test" versucht. Es hat nicht funktioniert und sagte "Fehler: Pfadangabe 'test' stimmt mit keiner Datei überein, die git bekannt ist." Dann habe ich "git pull" ausgeführt, dann wieder "git checkout test", und ich konnte jetzt zu diesem Branch wechseln: "Branch 'test' eingerichtet, um Remote-Branch 'test' von 'origin' zu verfolgen."
0 Stimmen
In meinem Fall habe ich einfach den Namen des Remote-Zweigs FALSCH geschrieben. Wenn keiner der hier aufgeführten Methoden für dich funktioniert hat, überprüfe deine Rechtschreibung...