tutorial Wie erstellt man einen entfernten Git-Zweig?




git tutorial (14)

Mit git können Sie jetzt einfach tippen, wenn Sie sich im richtigen Zweig befinden

git push --set-upstream origin <remote-branch-name >

und git erstellen für Sie den Ursprungszweig.

Ich habe eine lokale Niederlassung geschaffen, die ich stromaufwärts "schieben" möchte. Es gibt eine ähnliche Frage zu Stack Overflow, wie ein neu erstellter Remote-Zweig verfolgt werden kann.

Mein Workflow ist jedoch etwas anders. Zuerst möchte ich eine lokale Niederlassung erstellen und werde sie nur dann stromaufwärts verschieben, wenn ich zufrieden bin und meine Niederlassung teilen möchte.

  • Wie würde ich das machen? (meine Google-Suchanfragen schienen nichts zu finden).
  • Wie würde ich meinen Kollegen sagen, sie aus dem vorgelagerten Repository zu ziehen?

UPDATE Mit Git 2.0 gibt es eine einfachere Antwort, die ich unten geschrieben habe: https://stackoverflow.com/a/27185855/109305


Zuerst müssen Sie Ihren Zweig lokal erstellen

git checkout -b your_branch

Danach können Sie lokal in Ihrer Zweigstelle arbeiten. Wenn Sie bereit sind, die Zweigstelle gemeinsam zu nutzen, drücken Sie sie. Mit dem nächsten Befehl wird die Verzweigung zum Ursprung des Remote-Repositorys verschoben und verfolgt

git push -u origin your_branch

Teammitglieder können Ihre Niederlassung erreichen, indem Sie Folgendes tun:

git fetch
git checkout origin/your_branch

Sie können im Zweig weiterarbeiten und pushen, wann immer Sie möchten, ohne Argumente an git push weiterzuleiten (git push ohne Argumente schiebt den Master zum Remote-Master, your_branch local zum Remote-your_branch usw.).

git push

Teamkollegen können durch Festschreiben zu Ihrem Zweig pushen und dann explizit pushen

... work ...
git commit
... work ...
git commit
git push origin HEAD:refs/heads/your_branch

Oder verfolgen Sie den Zweig, um die Argumente für git push zu vermeiden

git checkout --track -b your_branch origin/your_branch
... work ...
git commit
... work ...
git commit
git push

Erstellen Sie lokal einen neuen Zweig basierend auf dem aktuellen Zweig:

git checkout -b newbranch

Übernehmen Sie alle Änderungen wie gewohnt. Dann schieben Sie es stromaufwärts:

git push -u origin HEAD

Dies ist eine Verknüpfung, um den aktuellen Zweig zu einem Zweig mit demselben Namen am origin und ihn zu verfolgen, sodass Sie in Zukunft keinen origin HEAD angeben müssen.


Ich wollte nur hinzufügen, während:

git checkout -b {branchName}

Erzeugt einen neuen Zweig und überprüft diesen Zweig / macht ihn zu Ihrem aktuellen Zweig. Wenn Sie aus irgendeinem Grund nur einen Zweig abbrechen möchten, ihn aber nicht zu Ihrem aktuellen Zweig machen möchten, verwenden Sie den folgenden Befehl:

git branch {branchName}

Im ersten Befehl macht "checkout" diesen Zweig zu Ihrem aktuellen Zweig, und "-b" bedeutet: Dieser Zweig existiert noch nicht, also machen Sie es für mich.


Ich weiß, dass diese Frage gut beantwortet ist, aber ich wollte nur die Schritte auflisten, die ich unternehme, um einen neuen Zweig "myNewBranch" zu erstellen und auf "remote" (in meinem Fall "origin") zu verschieben und das Tracking einzurichten. Betrachten Sie dies als "TL; DR" -Version :)

# create new branch and checkout that branch
git checkout -b myNewBranch
# now push branch to remote 
git push origin myNewBranch
# set up the new branch to track remote branch from origin
git branch --set-upstream-to=origin/myNewBranch myNewBranch

Einfachste Lösung ... Drumm Roll ... git Version 2.10.1 (Apple Git-78)

1) git checkout -b localBranchNameThatDoesNotExistInRemote

2) Do your changes , and go a git commit 

3) git push origin localBranchNameThatDoesNotExistInRemote --force

Hinweis: Der Zweig, den Sie gerade in Ihrer lokalen Umgebung erstellt haben, und der entfernte, nicht vorhandene Zweig, in den Sie pushen möchten, müssen denselben Namen haben .


Wie geht es mit Source Tree?

 1: Open SourceTree, click on Repository -> Checkout
 2 :Click on Create New Branch
 3: Select branch where from you want to get code for new branch 
 4: Give your branch name
 5: Push the branch  (by click on Push button)

Erstellen eines lokalen Zweigs aus einem vorhandenen Zweig (kann Master / Entwicklung / Any-Other-Zweig sein).

git checkout -b Zweigname

Schieben Sie diese zur Fernbedienung

git push -u Fernname Lokaler_Stammname: Fernstammname

Hier,

  1. -u: Legt den Upstream-Zweig fest
  2. remote_name: git setzt den Namen standardmäßig auf "Ursprung", wenn das Repository erstellt wird. Dies kann jedoch in einen anderen beliebigen Namen geändert werden.
  3. local_branch_name: ist der Name des lokalen Zweigs, der gepusht werden soll.
  4. remote_branch_name: ist der Name des Remote-Zweigs, den Sie auf Remote erstellen möchten.

Wenn wir die lokalen und fernen Zweignamen entfernen, hat es das Format

git Push -u Fernname Zweigname

Dadurch wird der lokale Zweig in den Remote-Zweig verschoben und hat denselben Namen wie der lokale Zweig Zweigname. Die lokale Niederlassung verfolgt auch die entfernte Niederlassung.


Erstellen Sie den Zweig auf Ihrem lokalen Computer und wechseln Sie in diesen Zweig:

$ git checkout -b [name_of_your_new_branch]

Schieben Sie den Zweig auf Github:

$ git push origin [name_of_your_new_branch]

Wenn Sie in Ihrer Zweigstelle etwas festschreiben möchten, müssen Sie unbedingt in Ihrer Zweigstelle sein.

Sie können alle mit folgenden Zweigen erstellten Zweige sehen:

$ git branch

Was wird zeigen:

* approval_messages
  master
  master_clean

Fügen Sie eine neue Fernbedienung für Ihre Zweigstelle hinzu:

$ git remote add [name_of_your_remote] 

Push-Änderungen von Ihrem Commit in Ihre Zweigstelle:

$ git push origin [name_of_your_remote]

Aktualisieren Sie Ihren Zweig, wenn der ursprüngliche Zweig aus dem offiziellen Repository aktualisiert wurde:

$ git fetch [name_of_your_remote]

Dann müssen Sie sich für das Zusammenführen von Änderungen bewerben. Wenn Ihr Zweig von der Entwicklung abgeleitet ist, müssen Sie Folgendes tun:

$ git merge [name_of_your_remote]/develop

Löschen Sie einen Zweig in Ihrem lokalen Dateisystem:

$ git branch -d [name_of_your_new_branch]

So erzwingen Sie das Löschen eines lokalen Zweigs in Ihrem Dateisystem:

$ git branch -D [name_of_your_new_branch]

Löschen Sie den Zweig auf Github:

$ git push origin :[name_of_your_new_branch]

Hier alle Informationen

Anderes vorhandenes Projekt


Zuerst erstellen Sie Ihre Niederlassung lokal:

git checkout -b <branch-name> # Create a new branch and check it out

Der Remote-Zweig wird automatisch erstellt, wenn Sie ihn auf den Remote-Server übertragen. Wenn Sie sich dazu bereit fühlen, können Sie einfach Folgendes tun:

git push <remote-name> <branch-name> 

Wo <remote-name> normalerweise der origin , der Name, den git der Remote gibt, von der Sie geklont haben. Ihre Kollegen würden dann einfach diesen Zweig ziehen und er wird automatisch lokal erstellt.

Beachten Sie jedoch, dass das Format formal lautet:

git push <remote-name> <local-branch-name>:<remote-branch-name>

Wenn Sie jedoch einen auslassen, wird davon ausgegangen, dass beide Zweignamen gleich sind. Machen Sie sich jedoch zur Vorsicht mit dem kritischen Fehler, nur Folgendes anzugeben :<remote-branch-name> der entfernten Verzweigung :<remote-branch-name> (mit dem Doppelpunkt), oder die entfernte Verzweigung wird gelöscht!

Damit ein nachfolgender git pull weiß, was zu tun ist, sollten Sie stattdessen Folgendes verwenden:

git push --set-upstream <remote-name> <local-branch-name> 

Wie unten beschrieben, --set-upstream Option --set-upstream einen Upstream-Zweig ein:

Fügen Sie für jeden Zweig, der aktuell ist oder erfolgreich verschoben wurde, eine Upstream-Referenz (Tracking) hinzu, die von git-pull (1) ohne Argumente und anderen Befehlen verwendet wird.


So machen Sie es in Eclipse durch Egit.

1) Gehen Sie in die Ansicht "Git Repository Exploring" und erkunden Sie das git-Projekt, zu dem Sie einen Zweig erstellen möchten. Wählen Sie unter Brances -> Local .. den Zweig aus, für den Sie den Zweig erstellen möchten (In meinem Fall habe ich Master .. ausgewählt. Sie können einen anderen Zweig auswählen, wenn Sie möchten.) Klicken Sie mit der rechten Maustaste und klicken Sie auf Zweig erstellen. und wählen Sie die Option zum Auschecken dieses Projekts aus und klicken Sie dann auf die Schaltfläche Fertig stellen.

2) Wählen Sie nun im Projekt-Explorer das Projekt aus. Klicken Sie mit der rechten Maustaste und dann auf Team -> Push Branch.

Ein neuer Remote-Zweig wird erstellt. Sie können Ihren Kollegen den Namen der Niederlassung geben, damit sie ihn ziehen können.


Wenn Sie tatsächlich nur einen entfernten Zweig erstellen möchten, ohne den lokalen Zweig zu haben, können Sie dies folgendermaßen tun:

git push origin HEAD:refs/heads/foo

Dadurch wird das, was sich in Ihrem KOPF befindet, dazu gezwungen , das Netzwerk zu verzweigen, das auf der Fernbedienung nicht vorhanden war.


Wenn Sie aus dem aktuellen Zweig einen Zweig erstellen möchten

git checkout -b {your_local_branch_name} 

Wenn Sie einen Zweig von einem entfernten Zweig wünschen, können Sie es versuchen

git checkout -b {your_local_branch_name} origin/<remote_branch_name>

Wenn Sie mit den Änderungen fertig sind, können Sie die Datei hinzufügen.

git add -A or git add <each_file_names>

Dann machen Sie ein Commit vor Ort

git commit -m 'your commit message'

Wenn Sie zum Remote-Repo wechseln möchten

git push -u origin <your_local_branch_name>

Alles zusammen wird sein

git checkout -b bug_fixes 

oder Wenn Sie einen Zweig von einem entfernten Zweig aus erstellen möchten, sagen Sie Entwicklung

git checkout -b bug_fixes ursprung / entwicklung

Sie können auf den Zweig zu Remote-Repo durch drücken

git push -u origin **bug_fixes**

Wenn Sie Ihre Zweigstelle von einer anderen Zweigstelle aus aktualisieren möchten, sagen Sie " Master" .

git pull origin master .


Zuerst erstellen Sie den Zweig lokal:

git checkout -b your_branch

Und dann den Zweig aus der Ferne erstellen:

git push --set-upstream origin your_branch

Hinweis: Dies funktioniert bei den neuesten Versionen von git:

$ git --version
git version 2.3.0

Prost!





git-branch