Comment puis-je vérifier une branche Git distante?

6715

Quelqu'un a poussé une branche appelée testavec git push origin testvers un référentiel partagé. Je peux voir la branche avec git branch -r.

Maintenant, j'essaie de vérifier la testbranche distante .

J'ai essayé:

  • git checkout test qui ne fait rien

  • git checkout origin/testdonne * (no branch). Ce qui est déroutant. Comment puis-je être sur "pas de succursale"?

Comment puis-je vérifier une branche Git distante?

Verre Juri
la source
9
@inger Mais cela n'inclut pas la possibilité de renommer la nouvelle branche locale (si vous voulez - mettre en amont plus tard et conserver la cohérence des noms)
fachexot
15
Je pense que ce fil est inutile. Rien ne semble fonctionner, la question d'origine semble avoir été perdue dans de nombreuses réponses. J'ai lu chaque mot, j'ai tout essayé ci-dessous et je n'ai aucune idée de comment faire ce que le PO veut faire.
Tony Ennis
6
Les commandes Git ne sont pas intuitives pour commencer, ajoutez les changements introduits avec les versions récentes au mix et vous avez cette page ...
Christophe Roussy
14
J'ai l'impression de prendre des pilules folles. J'essaie de retirer une branche d'un upstream, et pas seulement origin, et chaque réponse recommandée ne fait rien d'utile à distance (destiné à un jeu de mots). EDIT - excusez-moi, la multitude de suggestions contenues dans les 2 premières réponses étaient inutiles; Le troisième ( git branch test origin/test) est ce qui fonctionne. Heureux que les 2 premiers aient 20 fois plus de votes ...
dwanderson
4
Vous avez peut-être un fichier nommé «test» dans votre arborescence de travail, voir stackoverflow.com/a/45006389/792416 pour plus de détails.
Oldman

Réponses:

9151

Mise à jour

La réponse de Jakub s'améliore en fait. Avec les versions Git ≥ 1.6.6, avec une seule télécommande, vous pouvez simplement faire:

git fetch
git checkout test

Comme le souligne l'utilisateur masukomi dans un commentaire, git checkout testne fonctionnera PAS dans git moderne si vous avez plusieurs télécommandes. Dans ce cas, utilisez

git checkout -b test <name of remote>/test

ou la sténographie

git checkout -t <name of remote>/test

Ancienne réponse

Avant de pouvoir commencer à travailler localement sur une branche distante, vous devez le récupérer comme indiqué dans les réponses ci-dessous.

Pour récupérer une branche, il vous suffit de:

git fetch origin

Cela récupérera toutes les branches distantes pour vous. Vous pouvez voir les succursales disponibles pour le paiement avec:

git branch -v -a

Avec les succursales distantes en main, vous devez maintenant vérifier la succursale qui vous intéresse, en vous donnant une copie de travail locale:

git checkout -b test origin/test
hallski
la source
398
Pour développer cela: git ne vous permet pas de travailler sur les branches de quelqu'un d'autre. Vous ne pouvez travailler que par vous-même. Donc, si vous souhaitez ajouter à la branche de quelqu'un d'autre, vous devez créer votre propre "copie" de cette branche, ce que fait la commande ci-dessus (eh bien, elle crée votre branche et la vérifie également).
Dan Moulding
139
S'il s'agit d'une nouvelle branche distante, vous devrez peut-être le faire git fetchavant de le faire pour que git soit au courantorigin/test
Neil Sarkar
56
... et vous le feriez avecgit fetch origin test
Andrew
22
Erreur: "git checkout: la mise à jour des chemins est incompatible avec le changement de branche. Avez-vous l'intention de passer à la caisse origin/testqui ne peut pas être résolu comme commit?"
Xeoncross
85
git checkout testne fonctionnera PAS dans git moderne si vous avez plusieurs télécommandes qui ont le même nom de branche . Il ne sait pas lequel utiliser.
masukomi
1256

Sidenote: Avec Git moderne (> = 1.6.6 ), vous pouvez utiliser simplement

git checkout test

(notez qu'il s'agit de «test» et non d '«origine / test») pour effectuer un DWIM magique et créer un «test» de branche locale pour vous, pour lequel en amont serait la branche de suivi à distance «origine / test».


La sortie * (no branch)in git branchsignifie que vous êtes sur une branche sans nom, dans ce que l'on appelle l'état "HEAD détaché" (HEAD pointe directement vers la validation et n'est pas une référence symbolique à une branche locale). Si vous avez effectué des validations sur cette branche sans nom, vous pouvez toujours créer une branche locale à partir de la validation actuelle:

git checkout -b test HEAD

** EDIT (par l'éditeur et non par l' auteur) **

J'ai trouvé un commentaire enfoui ci-dessous qui semble moderniser cette réponse:

@Dennis: git checkout, par exemple git checkout origine / test résultats dans HEAD détaché / branche sans nom, tandis que git checkout test ou git checkout -b test origine / test résultats dans le test de branche local (avec origine / test de la branche de suivi à distance en amont) ) - Jakub Narębski 9 janvier 14 à 8:17

accent sur git checkout origin/test

Jakub Narębski
la source
33
Sans surprise, mais cette version a été publiée au cours des dernières années - connaître cette syntaxe peut gagner beaucoup de temps car il y a encore beaucoup de documentation ancienne et de fils de commentaires flottant qui suggèrent l'ancienne méthode pour le faire.
Curtis
10
"git moderne" - pour mémoire, (approximativement) à quelle version faites-vous référence? Parfois, nous devons travailler sur des systèmes exécutant des distributions plus anciennes.
Craig McQueen
5
"git moderne" dans ce contexte est git 1.6.6
Bobby Norton
10
@aidan Si vous obtenez une réponse comme celle- error: pathspec 'branch_name' did not match any file(s) known to git.là, vous devez d'abord faire une recherche git.
Dennis
6
Utilisation de la version 1.8.3.msysgit.0 de git et cela ne fonctionne pas pour moi - ne correspond à aucun fichier connu pour git - j'ai fait de nombreuses récupérations de git
PandaWood
565

Dans ce cas, vous souhaiterez probablement créer une testbranche locale qui suit la testbranche distante :

$ git branch test origin/test

Dans les versions antérieures de git, vous aviez besoin d'une --trackoption explicite , mais c'est la valeur par défaut maintenant lorsque vous dérivez une branche distante.

ndim
la source
15
Cela créera une branche locale sans y basculer.
Alex Skrypnyk
2
Bien que je sois mortel: Nom d'objet ambigu: 'origin / dev' - où une branche 'dev' sur l'origine existe très certainement - mais j'avais accidentellement créé une branche appelée "origin / dev" sur ma machine (lors de mes précédentes tentatives stupides) pour bien faire les
choses
1
Cela m'a donné l'erreur d'erreur: n'a pas réussi à pousser certaines références pour donner un indice: les mises à jour ont été rejetées car une pointe de branche poussée est derrière son indice distant: homologue. Consultez cette branche et fusionnez l'indication des modifications à distance: (par exemple 'git pull') avant de pousser à nouveau. astuce: Voir la «Remarque sur les avances rapides» dans «git push --help» pour plus de détails.
pal4life
475

La réponse acceptée ne fonctionne pas pour vous?

Bien que la première réponse sélectionnée soit techniquement correcte , il est possible que vous n'ayez pas encore récupéré tous les objets et références du référentiel distant. Si tel est le cas, vous recevrez l'erreur suivante:

$ git checkout -b remote_branch origin/remote_branch

fatal: git checkout: la mise à jour des chemins est incompatible avec le changement de branche.
Avez-vous l'intention de retirer 'origin / remote_branch' qui ne peut pas être résolu comme commit?

Solution

Si vous recevez ce message, vous devez d'abord faire git fetch originoriginest le nom du référentiel distant avant de l'exécuter git checkout remote_branch. Voici un exemple complet avec des réponses:

$ git fetch origin
remote: Counting objects: 140, done.
remote: Compressing objects: 100% (30/30), done.
remote: Total 69 (delta 36), reused 66 (delta 33)
Unpacking objects: 100% (69/69), done.
From https://github.com/githubuser/repo-name
   e6ef1e0..5029161  develop    -> origin/develop
 * [new branch]      demo       -> origin/demo
   d80f8d7..359eab0  master     -> origin/master

$ git checkout demo
Branch demo set up to track remote branch demo from origin.
Switched to a new branch 'demo'

Comme vous pouvez le voir, l'exécution a git fetch originrécupéré toutes les branches distantes que nous n'étions pas encore configurées pour suivre sur notre machine locale. À partir de là, puisque nous avons maintenant une référence à la branche distante, nous pouvons simplement exécuter git checkout remote_branchet nous bénéficierons des avantages du suivi à distance.

Corey Ballou
la source
2
J'ajouterai une note si vous avez une branche séparée localement: assurez-vous que vous l'avez associée au référentiel distant en utilisant 'git remote add origin [the_path_to_your_repo / repo_name.git]'. Utilisez ensuite 'git fetch origin' où 'origin' signifie le référentiel d'origine avec lequel vous avez fait l'association.
elliotrock
git checkout -b newbranchfonctionne également très bien pour créer et extraire en une seule étape une nouvelle branche basée sur la branche actuelle.
Linus
2
Je pense que c'est le plus à jour (il continue de changer $ @ #! Ing!). Git 2.5.5 J'ai trouvé que la seule façon de voir les branches distantes était git ls-remoteet la seule façon d'en utiliser une est git checkout -b [branch] --track [remote/branch]... et c'est après avoir git pull [remote] [branch] travaillé. C'est-à-dire, il a en fait tiré toute la branche, mais ne l'a pas répertorié.
deliciousLatticeworkFever
et quand cette réponse ne fonctionne pas non plus, voyez celle-ci .
eis
juste pour ajouter, si vous git fetch other_remote only_branch, vous obtenez toujours l' fatalerreur. Vous devez git fetch other_remotesans le nom de la branche. Conception étrange.
HNE
258

J'ai essayé la solution ci-dessus, mais cela n'a pas fonctionné. Essayez ceci, cela fonctionne:

git fetch origin 'remote_branch':'local_branch_name'

Cela va chercher la branche distante et créer une nouvelle branche locale (si elle n'existe pas déjà) avec le nom local_branch_nameet suivre celle distante.

Sahil kalra
la source
37
Cela a fonctionné pour moi quand ni git fetch origin ni git remote update n'ont créé de branches locales. Je ne sais pas pourquoi.
Godsmith
4
C'était le moyen le plus direct d'accomplir ce dont j'avais besoin, à savoir utiliser une branche distante (pas maître) pour créer une nouvelle branche.
Roralee
7
Fonctionne de manière transparente, en particulier lorsque vous avez cloné une seule branche à partir d'une télécommande avec plusieurs branches.
Alex C
7
cela a fonctionné pour moi aussi, où les réponses acceptées et les autres votes élevés n'ont pas fonctionné. Ma version git est 2.5.0
pdepmcp
5
Quelqu'un at-il une idée de pourquoi cela fonctionne alors que tout le reste ne fonctionne pas? (Je suis sur git 2.13.0)
Nathan Arthur
108

Ce sera DWIM pour une origine distante non nommée ( documentation ):

$ git checkout -t remote_name/remote_branch

Pour ajouter une nouvelle télécommande, vous devrez d'abord procéder comme suit:

$ git remote add remote_name location_of_remote
$ git fetch remote_name

Le premier indique à Git que la télécommande existe, le second obtient les commits.

tacaswell
la source
104

Utilisation:

git checkout -b <BRANCH-NAME> <REMOTE-NAME>/<BRANCH-NAME>

D'autres réponses ne fonctionnent pas avec Git moderne dans mon cas bénin. Vous devrez peut-être tirer en premier si la branche distante est nouvelle, mais je n'ai pas vérifié ce cas.

matanster
la source
2
Vous rendez-vous compte qu'il s'agit d'un extrait de cette réponse
Thomas Ayoub
14
En regardant maintenant, ils se chevauchent. Seule la mienne est succincte et vous dit quoi faire plutôt que de raconter une histoire. Je suppose donc que cela peut être plus utile, en particulier pour les versions git actuelles. Vous pouvez voter contre si vous pensez que c'est une mauvaise réponse.
matanster
1
git fetch est l'option sûre. Essayez d'aller chercher avant d'utiliser pull. Les deux téléchargent du contenu distant, mais bien que la récupération ne change pas l'état local, l'extraction changera immédiatement l'état local.
Peter Szalay
89

D'accord , la réponse est simple ... Vous voyez essentiellement la branche, mais vous n'avez pas encore de copie locale! ...

Vous avez besoin de fetchla succursale ...

Vous pouvez simplement récupérer puis passer à la succursale, utilisez la commande d'une ligne ci-dessous pour le faire:

git fetch && git checkout test

J'ai également créé l'image ci-dessous pour que vous puissiez partager les différences, voir comment cela fetchfonctionne et comment c'est différent de pull:

git fetch

Alireza
la source
@DmitriZaitsev oui, cela fonctionnera, si la branche distante est là, et que vous récupérez, vous obtiendrez la branche localement ... git fetch && git checkout test..Ainsi, cela fonctionne, sauf s'il n'y a pas de branche distante, mais le question disant qu'il y a déjà une succursale éloignée là-bas ...
Alireza
La façon dont je vois la question testressemble à une nouvelle branche, il est donc peu probable qu'elle soit présente localement. Sinon, vous pourriez le tirer plus facilement avec une seule git pullcommande.
Dmitri Zaitsev
@DmitriZaitsev, oui, c'est pourquoi j'ai dit git fetch, qui vérifie les branches distantes qui viennent d'être créées, pull peut apporter d'autres éléments indésirables, mais fetch rend toutes les branches disponibles si vous avez déjà le dépôt localement ...
Alireza
Ne serait - fetchsans pullchangements de congé dans la copie récupérée mais pas dans la branche locale, menant à votre succursale locale ne pas être mise à jour?
Dmitri Zaitsev
56

Pour cloner un référentiel Git, procédez comme suit:

git clone <either ssh url /http url>

La commande ci-dessus extrait toutes les branches, mais seule la masterbranche sera initialisée. Si vous souhaitez commander les autres succursales, faites:

git checkout -t origin/future_branch (for example)

Cette commande extrait la branche distante et le nom de votre branche locale sera le même que la branche distante.

Si vous souhaitez remplacer le nom de votre succursale locale lors du paiement:

git checkout -t -b enhancement origin/future_branch

Maintenant, votre nom de branche local est enhancement, mais votre nom de branche distante estfuture_branch .

Documentation

Madhan Ayyasamy
la source
git clone <soit ssh url / http url> - fonctionne parfaitement pour moi
Kmeixner
Oui tu as raison. Merci pour vos informations, je les mettrai à jour très prochainement @warvariuc
Madhan Ayyasamy
Si la télécommande n'a pas master, cela ne fonctionnera pas.
polkovnikov.ph
36

Tu peux essayer

git fetch remote
git checkout --track -b local_branch_name origin/branch_name

ou

git fetch
git checkout -b local_branch_name origin/branch_name
uma
la source
2
Pour info, --trackn'est plus nécessaire dans les nouvelles versions de git, car il est défini par défaut, comme expliqué dans cette réponse précédente .
33

Tout d'abord, vous devez faire:

git fetch # Si vous ne connaissez pas le nom de la succursale

git fetch origin branch_name

Deuxièmement, vous pouvez vérifier la succursale distante dans votre section locale en:

git checkout -b branch_name origin/branch_name

-b créera une nouvelle branche avec le nom spécifié à partir de votre branche distante sélectionnée.

Mohideen bin Mohammed
la source
Je ne comprends pas -b. Si vous pouvez faire "git checkout master" pourquoi ne pouvez-vous pas faire "git checkout origin / test"?
John Little
-b pour la nouvelle succursale d'origine / maître
Mohideen bin Mohammed
28

J'utilise la commande suivante:

git checkout --track origin/other_remote_branch
priyankvex
la source
13
Cette réponse serait beaucoup plus utile si vous expliquez pourquoi vous l'utilisez de cette façon. c'est-à-dire pourquoi quelqu'un devrait utiliser '--track' et ainsi de suite ...
Matt Friedman
27

Commandes

git fetch --all
git checkout -b <ur_new_local_branch_name> origin/<Remote_Branch_Name>

sont égaux à

 git fetch --all

et alors

 git checkout -b fixes_for_dev origin/development

Les deux vont créer un à latest fixes_for_devpartirdevelopment

sreekumar
la source
24

Si la branche est sur autre chose que la origintélécommande, j'aime faire ce qui suit:

$ git fetch
$ git checkout -b second/next upstream/next

Cela va extraire la nextbranche de la upstreamtélécommande vers une branche locale appelée second/next. Ce qui signifie que si vous avez déjà une branche locale nommée suivante, elle n'entrera pas en conflit.

$ git branch -a
* second/next
  remotes/origin/next
  remotes/upstream/next
Kris
la source
19

git fetch && git checkout your-branch-name

Inder Kumar Rathore
la source
18

aucune de ces réponses n'a fonctionné pour moi. cela a fonctionné:

git checkout -b feature/branch remotes/origin/feature/branch

brianyang
la source
1
Merci. Je me demandais si je devais utiliser le chemin complet ( télécommandes / origine / fonctionnalité / branche ) que j'ai vu gitlors de l'appel de la git branch -acommande, mais je n'en étais pas sûr, alors je l'ai utilisé git checkout -b apps/FEATURE/branch origin/apps/FEATURE/branchet cela a semblé fonctionner. Message:Branch 'apps/FEATURE/branch' set up to track remote branch 'apps/FEATURE/epicBranch' from 'origin'. Switched to a new branch 'apps/FEATURE/branch'
Chris22
18

J'étais coincé dans une situation en voyant error: pathspec 'desired-branch' did not match any file(s) known to git.toutes les suggestions ci-dessus. Je suis sur git version 1.8.3.1.

Cela a donc fonctionné pour moi :

git fetch origin desired-branch
git checkout -b desired-branch FETCH_HEAD

L'explication derrière est que j'ai remarqué que lors de la récupération de la branche distante, elle a été récupérée dans FETCH_HEAD:

$ git fetch origin desired-branch
From github.com:MYTEAM/my-repo
    * branch            desired-branch -> FETCH_HEAD
alisa
la source
17

Exécutez simplement git checkoutavec le nom de la branche distante. Git créera automatiquement une branche locale qui suivra la branche distante:

git fetch
git checkout test

Cependant, si ce nom de branche se trouve dans plus d'une télécommande, cela ne fonctionnera pas car Git ne sait pas lequel utiliser. Dans ce cas, vous pouvez utiliser:

git checkout --track origin/test

ou

git checkout -b test origin/test

En 2.19 , Git a appris la checkout.defaultRemoteconfiguration, qui spécifie une télécommande par défaut lors de la résolution d'une telle ambiguïté.

Eugene Yarmash
la source
16

git branch -rindique que le nom de l'objet n'est pas valide, car ce nom de branche n'est pas dans la liste des branches locales de Git. Mettez à jour votre liste de succursales locales depuis l'origine avec:

git remote update

Et puis essayez à nouveau de vérifier votre succursale distante.

Cela a fonctionné pour moi.

Je crois que cela git fetchattire toutes les branches éloignées, ce qui n'était pas ce que l'affiche originale voulait.

webdevguy
la source
2
FYI, git remote update récupérera également toutes les branches distantes .
13

La git remote show <origin name>commande répertorie toutes les branches (y compris les branches non suivies). Ensuite, vous pouvez trouver le nom de la branche distante que vous devez récupérer.

Exemple:

$ git remote show origin

Utilisez ces étapes pour récupérer des branches distantes:

git fetch <origin name> <remote branch name>:<local branch name>
git checkout <local branch name > (local branch name should the name that you given fetching)

Exemple:

$ git fetch origin test:test
$ git checkout test
Thushan
la source
@hallski a répondu que les versions 2.15.1 ne fonctionnaient pas, mais j'ai réduit le fichier .git en clonant le poids d'une seule branche et filtré l'historique avec l'indicateur --depth. par exemple, $ git clone -b release --single-branch --depth 5 https://github.com/user/repo.gitWron't information $ git remote show originthis ne répertorie pas toutes les branches distantes avec des référentiels clonés à branche unique.
Qh0stM4N
10

Récupérez à partir de la télécommande et passez à la succursale.

git fetch <remote_name> && git checkout <branch_name> 

Par exemple:

git fetch origin && git checkout feature / XYZ-1234-Add-alerts

Pranav
la source
9

D'autres gars et filles donnent les solutions, mais je peux peut-être vous dire pourquoi.

git checkout test qui ne fait rien

Does nothingn'est pas égal doesn't work, donc je suppose que lorsque vous tapez 'git checkout test' dans votre terminal et appuyez sur la touche Entrée, aucun message n'apparaît et aucune erreur ne se produit. Ai-je raison?

Si la réponse est «oui», je peux vous en dire la cause.

La raison en est qu'il existe un fichier (ou dossier) nommé «test» dans votre arborescence de travail.

Une fois git checkout xxxanalysé,

  1. Git ressemble xxxau début à un nom de branche, mais il n'y a pas de branche nommée test.
  2. Ensuite, Git pense que xxxc'est un chemin, et heureusement (ou malheureusement), il existe un fichier nommé test. Cela git checkout xxxsignifie donc rejeter toute modificationxxx fichier.
  3. S'il n'y a pas de fichier nommé xxxnon plus, Git essaiera de créer le fichier xxxselon certaines règles. L'une des règles est de créer une branche nommée xxxsi elle remotes/origin/xxxexiste.
vieil homme
la source
merci, j'essayais toujours de comprendre pourquoi git ne faisait rien.
Mike R
8

Pour obtenir des succursales nouvellement créées

git fetch

Pour basculer dans une autre branche

git checkout BranchName
Hasib Kamal
la source
6

Vous pouvez commencer à suivre toutes les branches distantes avec le script Bash suivant:

#!/bin/bash
git fetch --all
for branch in `git branch -r --format="%(refname:short)" | sed 's/origin\///'`
  do git branch -f --track "$branch" "origin/$branch"
done

Voici également une version monoligne:

git fetch --all; for branch in `git branch -r --format="%(refname:short)" | sed 's/origin\///'`; do git branch --track "$branch" "origin/$branch" ; done ;
OzzyCzech
la source
5

git checkout -b "Branch_name" [B signifie Créer une branche locale]

git branch --all

git checkout -b "Votre nom de succursale"

git branch

extraction réussie de la branche principale vers la branche de développement

entrez la description de l'image ici

Keshav Gera
la source
git checkout -b "Branch_name" [B signifie Créer une branche locale]
Keshav Gera
3

pour obtenir toutes les succursales distantes, utilisez ceci:

git fetch --all

puis passez à la succursale:

git checkout test
zahra
la source
2

Utilisez fetchpour tirer toute votre télécommande

   git fetch --all

Pour répertorier les succursales distantes:

   git branch -r

Pour lister toutes vos succursales

   git branch -l
   >>outpots like-
     * develop
       test
       master

Pour commander / changer une succursale

   git checkout master
Nasir Khan
la source
Testé git branch -let aucune branche distante n'a été montrée.
Dmitri Zaitsev
utiliser git pull --allougit fetch --all
Nasir Khan
Oui, et après cela, git branch -l n'affiche toujours que les succursales locales . Il semble fonctionner exactement comme git branchsans -l, alors quelle est la raison -l?
Dmitri Zaitsev
De plus, votre réponse ne répond pas à la question - mastern'est pas une branche distante.
Dmitri Zaitsev
1
-ldrapeau pour la liste. Vous pouvez --listégalement utiliser
Nasir Khan
2

Pour nous, il semble que la remote.origin.fetchconfiguration ait posé problème. Par conséquent, nous ne pouvions pas voir d'autres branches distantes que master, donc git fetch [--all]n'a pas aidé. Ni l'un git checkout mybranchni l' autre git checkout -b mybranch --track origin/mybranchn'a fonctionné, même s'il était certainement éloigné.

La configuration précédente ne pouvait masterêtre récupérée:

$ git config --list | grep fetch
remote.origin.fetch=+refs/heads/master:refs/remotes/origin/master

Corrigez-le en utilisant *et en récupérant les nouvelles informations depuis l'origine:

$ git config remote.origin.fetch '+refs/heads/*:refs/remotes/origin/*'

$ git fetch
...
 * [new branch] ...
...

Maintenant, nous pourrions git checkoutla succursale distante localement.

Aucune idée de comment cette config s'est retrouvée dans notre dépôt local.

hzpc-joostk
la source
1
Cela m'a résolu depuis que j'ai cloné une seule branche
Pontus Holmbom
2

Si le nom de la branche distante commence par des caractères spéciaux, vous devez utiliser des guillemets simples autour de lui dans la commande de paiement, sinon git ne saura pas de quelle branche vous parlez.

Par exemple, j'ai essayé d'extraire une branche distante nommée comme #9773mais la commande ne fonctionnait pas correctement, comme indiqué dans l'image ci-dessous:

entrez la description de l'image ici

Pour une raison quelconque, je me suis demandé si le symbole pointu (#) pouvait y être '#9773'lié , puis j'ai essayé d'entourer le nom de la branche avec des guillemets simples, comme rathen que juste #9773, et heureusement, cela a bien fonctionné.

$ git checkout -b '#9773' origin/'#9773'
Ulysses Alves
la source
Dans de nombreux shells Unix, le #caractère est utilisé pour les commentaires, donc tout ce qui suit #sera ignoré. C'est une chose shell et pas quelque chose de spécifique à git. L'utilisation de guillemets antislash avant le #devrait suffire.
Paulo Scardine
1

Veuillez suivre la commande pour créer un dossier vide. Entrez cela et utilisez cette commande:

saifurs-Mini:YO-iOS saifurrahman$ git clone your_project_url
Cloning into 'iPhoneV1'...
remote: Counting objects: 34230, done.
remote: Compressing objects: 100% (24028/24028), done.
remote: Total 34230 (delta 22212), reused 15340 (delta 9324)
Receiving objects: 100% (34230/34230), 202.53 MiB | 294.00 KiB/s, done.
Resolving deltas: 100% (22212/22212), done.
Checking connectivity... done.
saifurs-Mini:YO-iOS saifurrahman$ cd iPhoneV1/
saifurs-Mini:iPhoneV1 saifurrahman$ git checkout 1_4_0_content_discovery
Branch 1_4_0_content_discovery set up to track remote branch 1_4_0_content_discovery from origin.
Switched to a new branch '1_4_0_content_discovery'
Mehedi Hasan
la source