Wie erstellt man einen entfernten Git-Zweig?
Ich habe einen lokalen Zweig erstellt, den ich nach oben verschieben möchte. Es gibt eine ähnliche Frage hier auf Stack Overflow, wie man einen neu erstellten entfernten Zweig verfolgen kann.
Mein Arbeitsablauf ist jedoch etwas anders. Zunächst möchte ich eine lokale Verzweigung erstellen, die ich nur nach oben schieben werde, wenn ich zufrieden bin und meine Verzweigung teilen möchte.
- Wie würde ich das machen? (meine Google-Suche scheint nichts zu ergeben).
- Wie sage ich meinen Kollegen, dass sie es aus dem Upstream-Repository ziehen sollen?
UPDATE Mit Git 2.0 gibt es eine einfachere Antwort Ich habe unten geschrieben: https://stackoverflow.com/a/27185855/109305
3021
3
Zunächst erstellen Sie Ihren Zweig lokal:
Der entfernte Zweig wird automatisch erstellt, wenn Sie ihn auf den entfernten Server übertragen. Wenn Sie also bereit dafür sind, können Sie das einfach tun:
Wobei `
typischerweise
Origin` ist, der Name, den Git dem Remote gibt, von dem Sie geklont haben. Ihre Kollegen würden dann einfach diesen Zweig ziehen und er wird automatisch lokal erstellt.Beachten Sie jedoch, dass das formale Format wie folgt lautet:
Wenn Sie jedoch einen auslassen, wird angenommen, dass beide Zweignamen gleich sind. Machen Sie also nicht den entscheidenden Fehler, nur
:
(mit Doppelpunkt) anzugeben, sonst wird die Fernverzweigung gelöscht!Damit ein nachfolgendes
git pull
weiß, was zu tun ist, sollten Sie stattdessen:
verwenden:Wie unten beschrieben, richtet die Option
--set-upstream
einen Upstream-Zweig ein:Zunächst müssen Sie Ihre Verzweigung lokal erstellen
Danach können Sie lokal in Ihrer Verzweigung arbeiten. Wenn Sie bereit sind, die Verzweigung zu teilen, pushen Sie sie. Der nächste Befehl pusht den Zweig in das entfernte Repository origin und verfolgt ihn
Teammitglieder können Ihren Zweig erreichen, indem sie dies tun:
Sie können in der Verzweigung weiterarbeiten und jederzeit pushen, ohne Argumente an git push zu übergeben (ohne Argumente pusht git push den Master an den entfernten Master, die lokale Verzweigung an die entfernte Verzweigung, usw.).
Teammitglieder können auf Ihren Zweig pushen, indem sie Commits machen und dann explizit pushen
Oder den Zweig verfolgen, um die Argumente für git push zu vermeiden
Wie in den vorherigen Antworten erwähnt,
ausreicht, um einen lokalen Zweig zu pushen.
Ihre Kollegen können mit diesem Befehl alle entfernten Zweige (einschließlich neuer Zweige) abrufen:
Um dann Änderungen an dem Zweig vorzunehmen, gehen Sie wie gewohnt vor: