git - tirant d'une branche spécifique


197

J'ai cloné un référentiel git sur mon serveur de développement, puis je suis passé à la branche dev, mais maintenant je ne peux pas faire de pull git pour mettre à jour la branche.

Comment mettre à jour le code sur le serveur?

Réponses:


258

Consultez la page de manuel git-pull :

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

et dans la section des exemples:

Fusionnez dans la branche actuelle la branche distante suivante:

$ git pull origin next

J'imagine donc que vous voulez faire quelque chose comme:

git pull origin dev

Pour le configurer afin qu'il le fasse par défaut pendant que vous êtes sur la branche dev:

git branch --set-upstream-to dev origin/dev

6
"L' --set-upstreamindicateur est obsolète et sera supprimé. Envisagez d'utiliser --trackou de --set-upstream-to Branch devconfigurer pour suivre le développement de la branche distante depuis l'origine." Par exemple. git branch --set-upstream-to origin/dev
Nagendra Rao

Modifiez ceci pour refléter la dépréciation de --set-upstream?
Scott Skiles

Personnellement, je suis intéressé par le flux lorsque je veux extraire une branche spécifique d'origine qui n'a pas encore été récupérée et mettre ces objets sur une branche distincte, donc ma branche actuelle n'est pas fusionnée avec ce que je tire.
Yuriy Pozniak

43

Voici ce que tu dois faire. Assurez-vous d'abord que vous êtes dans une branche que vous ne voulez pas tirer. Par exemple, si vous avez une branche master et develop et que vous essayez de tirer la branche develop, restez dans la branche master.

git checkout master

Ensuite,

git pull origin develop

5
Ceci est déroutant. Si je veux tirer une branche "dev" distante dans une branche "dev" locale, je pense que vous devez rester dans la branche "dev" locale et pas dans une autre branche.
Roman

2
Cela ne récupère-t-il pas la branche de développement à distance, puis la fusionne avec votre maître local?
Brad P.

2
J'ai fait git checkout developet git pull origin developbien travaillé. Vous devez extraire une autre branche si vous souhaitez supprimer une branche locale ou distante ( git branch -d developou git push origin --delete develop)
ChesuCR

Très perturbant. Je viens de fusionner la branche que je voulais tester en master local :)
Fabian Bosler

Comme le dit @roman, il faut être dans la branche locale.
woter324

15

Il est souvent plus clair de séparer les deux actions git pull. La première chose qu'il fait est de mettre à jour le branc de suivi local qui correspond à la branche distante. Cela peut être fait avec git fetch. La seconde est qu'il fusionne ensuite en changements, ce qui peut bien sûr être fait avec git merge, bien que d'autres options telles que celles-ci git rebasesoient parfois utiles.


7

Exemple de documentation Laravel:

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

basé sur le format de commande:

git pull origin <branch>

👍


5

Voici les étapes pour tirer une branche spécifique ou n'importe quelle branche,

1. clonez le maître (vous devez fournir un nom d'utilisateur et un mot de passe)

       git clone <url>

2. la commande ci-dessus clonera le référentiel et vous serez maintenant la branche principale

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

3. La commande ci-dessus va extraire la branche que vous voulez tirer et sera configurée pour suivre automatiquement cette branche

4.Si pour une raison quelconque, cela ne fonctionne pas comme ça, après avoir extrait cette branche de votre système local, exécutez simplement la commande ci-dessous

       git pull origin <branch>

1

Vous pouvez prendre la mise à jour / tirer sur la branche git que vous pouvez utiliser ci-dessous

git pull origin <branch-name>

La commande ci-dessus prendra une mise à jour / pull de donner le nom de la branche

Si vous voulez tirer d'une autre branche, vous devez vous rendre dans cette branche.

git checkout master

Que

git pull origin development

J'espère que cela fonctionnera pour vous


0

git-pull - Récupère et s'intègre à un autre référentiel ou à une branche locale

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

Vous pouvez vous référer au git doc officiel https://git-scm.com/docs/git-pull

Ex:

git pull origin dev


En quoi votre réponse diffère-t-elle des autres déjà publiées?
j08691

Ouais, il n'y a rien d'autre que des documents officiels ( git-scm.com/docs/git-pull ), vous pouvez donc explorer beaucoup d'options.
sesha

0

si vous voulez tirer d'une branche spécifique, tout ce que vous avez à faire est

git pull 'remote_name' 'branch_name'

REMARQUE: assurez-vous de valider votre code en premier.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.