Git - Ziehen aus einem bestimmten Zweig

197

Ich habe ein Git-Repository auf meinen Dev-Server geklont und dann zum Dev-Zweig gewechselt, aber jetzt kann ich keinen Git-Pull ausführen, um den Zweig zu aktualisieren.

Wie aktualisiere ich den Code auf dem Server?

Alex
quelle

Antworten:

258

Siehe die git-pull-Manpage :

git pull [options] [<repository> [<refspec>...]]

und im Beispielabschnitt:

Führen Sie den Remote-Zweig als Nächstes in den aktuellen Zweig ein:

$ git pull origin next

Ich stelle mir also vor, Sie möchten etwas tun wie:

git pull origin dev

So richten Sie es so ein, dass es dies standardmäßig tut, während Sie sich im Entwicklungszweig befinden:

git branch --set-upstream-to dev origin/dev
Cascabel
quelle
6
"Das --set-upstreamFlag ist veraltet und wird entfernt. Erwägen Sie, Remote-Zweigentwickler vom Ursprung aus zu verfolgen --trackoder --set-upstream-to Branch deveinzurichten." Z.B. git branch --set-upstream-to origin/dev
Nagendra Rao
Bearbeiten Sie dies, um die Ablehnung von --set-upstream?
Scott Skiles
Persönlich interessiert mich der Ablauf, wenn ich einen bestimmten Zweig aus dem Ursprung ziehen möchte, der noch nicht abgerufen wurde, und dieses Objekt auf einen separaten Zweig setzen möchte, damit mein aktueller Zweig nicht mit dem zusammengeführt wird, was ich ziehe.
Yuriy Pozniak
43

Hier ist was Sie tun müssen. Stellen Sie zunächst sicher, dass Sie sich in einem Zweig befinden, den Sie nicht ziehen möchten. Wenn Sie beispielsweise einen Master- und einen Entwicklungszweig haben und versuchen, den Entwicklungszweig abzurufen, bleiben Sie im Hauptzweig.

git checkout master

Dann,

git pull origin develop
der Stern
quelle
5
Das ist verwirrend. Wenn ich einen entfernten "dev" -Zweig in einen lokalen "dev" -Zweig ziehen möchte, würde ich denken, dass Sie im lokalen "dev" -Zweig und nicht in einem anderen Zweig bleiben müssen.
Roman
2
Ruft dies nicht den Remote-Entwicklungszweig ab und führt ihn dann mit Ihrem lokalen Master zusammen?
Brad P.
2
Ich habe git checkout developund git pull origin developund habe gut gearbeitet. Sie müssten einen anderen Zweig git branch -d developgit push origin --delete develop
auschecken,
sehr verwirrend. Ich habe gerade den Zweig, den ich testen wollte, vor Ort zum Master zusammengeführt :)
Fabian Bosler
Wie @roman sagt, muss man in der lokalen Niederlassung sein.
woter324
15

Es ist oft klarer, die beiden Aktionen zu trennen git pull. Als erstes wird der lokale Tracking-Branc aktualisiert, der dem Remote-Zweig entspricht. Dies kann mit gemacht werden git fetch. Das zweite ist, dass es dann in Änderungen zusammengeführt wird, was natürlich möglich ist git merge, obwohl andere Optionen, wie sie git rebasegelegentlich nützlich sind.

wnoise
quelle
7

Beispiel für eine Laravel-Dokumentation:

git pull https://github.com/laravel/docs.git 5.8

basierend auf dem Befehlsformat:

git pull origin <branch>

👍

Erich García
quelle
4

Hier sind die Schritte zum Ziehen eines bestimmten oder eines beliebigen Zweigs:

1.Klonen Sie den Master (Sie müssen Benutzername und Passwort angeben)

       git clone <url>

2. Der obige Befehl klont das Repository und Sie sind jetzt der Hauptzweig

       git checkout <branch which is present in the remote repository(origin)>

3. Der obige Befehl checkt zu dem Zweig aus, den Sie ziehen möchten, und wird so eingestellt, dass dieser Zweig automatisch verfolgt wird

4.Wenn dies aus irgendeinem Grund nicht funktioniert, führen Sie nach dem Auschecken in diesen Zweig in Ihrem lokalen System einfach den folgenden Befehl aus

       git pull origin <branch>
vikas etagi
quelle
1

Sie können den Git-Zweig aktualisieren / ziehen, den Sie unter dem folgenden Befehl verwenden können

git pull origin <branch-name>

Der obige Befehl wird aktualisiert / abgerufen, wenn der Zweigstellenname angegeben wird

Wenn Sie von einem anderen Zweig ziehen möchten, müssen Sie zu diesem Zweig gehen.

git checkout master

Als

git pull origin development

Hoffe das wird für dich funktionieren

Nikunj K.
quelle
0

git-pull - Abrufen von und Integration in ein anderes Repository oder einen lokalen Zweig

git pull [options] [<repository> [<refspec>...]]

Sie können auf das offizielle Git-Dokument https://git-scm.com/docs/git-pull verweisen

Ex :

git pull origin dev

Sesha
quelle
Inwiefern unterscheidet sich Ihre Antwort von den anderen bereits veröffentlichten?
j08691
Ja, nicht viel, nur offizielle Dokumente ( git-scm.com/docs/git-pull ), so dass Sie viele Optionen erkunden können.
Sesha
0

Wenn Sie aus einem bestimmten Zweig ziehen möchten, müssen Sie nur noch etwas tun

git pull 'remote_name' 'branch_name'

HINWEIS: Stellen Sie sicher, dass Sie zuerst Ihren Code festschreiben.

Ali Hassan
quelle