J'essaie de suivre le didacticiel Rails de Michael Hartl, mais j'ai rencontré une erreur.
Je me suis inscrit sur Github et j'ai émis une nouvelle clé SSH et créé un nouveau référentiel. Mais lorsque j'entre la ligne suivante dans le terminal, j'obtiens l'erreur suivante:
Parkers-MacBook-Pro:.ssh ppreyer$ git remote add origin [email protected]:ppreyer/first_app.git
fatal: remote origin already exists.
Vous vous demandez simplement si quelqu'un d'autre a rencontré ce problème?
github
terminal
github-for-mac
ppreyer
la source
la source
.git/config
fichier pour voir si l'origine n'est pas encore déclarée.Réponses:
TL; DR, vous devez simplement mettre à jour la télécommande existante:
Version longue:
Comme l'indique le message d'erreur, il existe déjà une télécommande configurée avec le même nom. Vous pouvez donc soit ajouter la nouvelle télécommande avec un nom différent, soit mettre à jour l'existant si vous n'en avez pas besoin:
Pour ajouter une nouvelle télécommande, appelée par exemple à la
github
place deorigin
(qui existe évidemment déjà dans votre système), procédez comme suit:N'oubliez pas que, partout dans le tutoriel, vous voyez "origine", vous devez le remplacer par "github" . Par exemple
$ git push origin master
devrait maintenant l'être$ git push github master
.Cependant, si vous voulez voir ce qu'est ce
origin
qui existe déjà, vous pouvez le faire$ git remote -v
. Si vous pensez que c'est là par une erreur, vous pouvez le mettre à jour comme ceci:la source
git remote -v
sorties? Pouvez-vous également essayergit push origin master
?git remote rm origin
n'a pas tout à fait fonctionné. Cela a produit une erreur: impossible de supprimer la section de configuration 'remote.origin'git remote set-url --add origin [email protected]/username/repo.git
En bref,
Travaillé !
À votre santé!
la source
Pour ceux d'entre vous qui rencontrent l'erreur toujours aussi courante "fatal: l'origine distante existe déjà.", Ou lorsque vous essayez de supprimer l'origine et que vous obtenez "erreur: impossible de supprimer la section de configuration remote.origin", ce que vous devez faire est de définir l'origine manuellement.
POSH ~ Git pour Windows PowerShell de Windows (et l'application GitHub pour Windows) a un problème avec cela.
Je suis tombé sur cela, comme je le fais souvent, à nouveau lors de la configuration de mon octopress. Alors, voici comment je l'ai fait fonctionner.
Tout d'abord, vérifiez vos télécommandes:
Vous remarquerez d'abord que mon origine n'a pas d'URL. Toute tentative de suppression, de renommage, etc. échoue.
Donc, changez l'url manuellement:
Ensuite, vous pouvez confirmer que cela a fonctionné en exécutant à
git remote -v
nouveau:Cela a corrigé des dizaines de dépôts git avec lesquels j'ai eu des problèmes, GitHub, BitBucket GitLab, etc.
la source
Vous pouvez voir à quels référentiels distants vous êtes configuré pour vous connecter via
Cela renverra une liste dans ce format:
Cela pourrait vous aider à comprendre ce que l '«origine» d'origine indiquait.
Si vous souhaitez conserver la connexion distante que vous voyez avec le -v, mais que vous souhaitez toujours suivre le didacticiel Rails sans avoir à vous souvenir de 'github' (ou d'un autre nom) pour le dépôt de votre didacticiel, vous pouvez renommer votre référentiel autre référentiel avec le commander:
un péché:
Vous devriez alors pouvoir reprendre votre tutoriel.
la source
Faites d'abord un:
puis
et le tour est joué! A travaillé pour moi!
la source
Dans le cas particulier où vous créez un nouveau référentiel à partir d'un ancien référentiel que vous avez utilisé comme modèle (ne faites pas cela si ce n'est pas votre cas). Effacez complètement les fichiers git de l'ancien dépôt pour pouvoir en démarrer un nouveau:
Et puis redémarrez un nouveau dépôt git comme d'habitude:
la source
Si vous devez vérifier les dépôts distants que vous avez connectés à vos dépôts locaux, il existe un cmd:
Maintenant, si vous souhaitez supprimer le référentiel distant (par exemple, l'origine), vous pouvez alors:
la source
Ce message d'erreur indique que vous avez déjà une télécommande dans votre répertoire git. Si vous êtes satisfait de cette télécommande, vous pouvez pousser votre code. Sinon ou si vous ne pouvez pas pousser simplement:
Voilà!
la source
Le concept de
remote
est simplement l'URL de votre référentiel distant.Le
origin
est un alias pointant vers cette URL. Donc, au lieu d'écrire l'URL entière à chaque fois que nous voulons pousser quelque chose dans notre référentiel, nous utilisons simplement cet alias et exécutons:git push -u origin master
Dire à git à
push
notre code de notre branche maître locale au référentiel d' origine distant .Chaque fois que nous clonons un référentiel , git crée cet alias pour nous par défaut. Aussi chaque fois que nous créons un nouveau référentiel , nous le créons simplement nous-mêmes.
Quel que soit le cas, nous pouvons toujours changer ce nom en tout ce que nous aimons, en exécutant ceci:
Comme il est stocké du côté client de l' application git (sur notre machine), le modifier n'affectera rien dans notre processus de développement, ni dans notre référentiel distant. N'oubliez pas, ce n'est qu'un nom pointant vers une adresse .
La seule chose qui change ici en renommant l'alias, c'est que nous devons déclarer ce nouveau nom chaque fois que nous poussons quelque chose dans notre référentiel.
git push -u my-remote-alias master
Évidemment, un seul nom ne peut pas pointer vers deux adresses différentes. C'est pourquoi vous obtenez ce message d'erreur. Il existe déjà un alias nommé
origin
sur votre ordinateur local. Pour voir combien d'alias vous avez et quels sont-ils, vous pouvez lancer cette commande:Cela vous montrera tous les alias que vous avez ainsi que les URL correspondantes.
Vous pouvez également les supprimer si vous aimez exécuter ceci:
Donc en bref:
Codage heureux.
la source
si vous ajoutez déjà un projet pour un autre stockage, comme vous téléchargez sur github puis vous téléchargez sur bitbucket, cela montre ce type d'erreur.
Comment supprimer l'erreur: supprimez le fichier git-hub dans votre projet, puis répétez les étapes suivantes ...
la source
Cela peut également arriver si vous exécutez la commande dans le répertoire sans initialiser git. Si tel est le cas, exécutez en premier:
la source
pour utiliser git, vous devez être
sinon, utilisez sudo
pour ajouter l'origine:
git remote add origin http: // giturl
la source
$ git remote add origin [email protected]:abc/backend/abc.git
Dans cette commande, l'origine ne fait pas partie de la commande, c'est juste le nom de votre référentiel distant. Vous pouvez utiliser le nom de votre choix.
$ git remote -v
Cela vous donnera un résultat comme celui-ci
origin [email protected]:abc/backend/abc.git (fetch) origin [email protected]:abc/backend/abc.git (push) origin1 [email protected]:abc/backend/abc.git (fetch) origin1 [email protected]:abc/backend/abc.git (push)
s'il contient votre chemin de référentiel distant, vous pouvez directement pousser vers cela sans ajouter à nouveau l'origine
Ensuite, vous pouvez ajouter une nouvelle origine avec un nom différent et l'utiliser pour pousser comme
$ git remote add origin101 [email protected]:abc/backend/abc.git
Ou vous pouvez renommer le nom d'origine existant ajouter votre origine
git remote rename origin destination
tirer à nouveau sous la commande
$ git remote -v
destination [email protected]:abc/backend/abc.git (fetch) destination [email protected]:abc/backend/abc.git (push)
Cela changera votre nom de dépôt existant afin que vous puissiez utiliser ce nom d'origine
Ou vous pouvez simplement supprimer votre origine existante et ajouter votre origine
git remote rm destination
la source
Essaye ça
la source
face à la même erreur lors de l'ajout du référentiel à git hun en utilisant git bash sur windows
fatal: l'origine éloignée existe déjà.
erreur: échec de l'envoi de certaines références à ' https://github.com/axaysushir/meditation_app_using_js.git '
la source
mettre à jour l'origine si elle existe déjà en utilisant cette commande
la source
Première vérification Pour voir combien d'alias vous avez et quels sont-ils, vous pouvez lancer cette commande git remote -v
Ensuite, voyez dans quel référentiel vous vous trouvez, puis essayez git remote set-url --add [Puis votre lien de référentiel] git push -u origin master
la source
Sur bash au moins, nous pouvons forcer la valeur de retour du code de sortie de la commande à 0
Vous pouvez supprimer l'ancienne télécommande et l'ajouter à nouveau
la source
Dans le cas où vous souhaitez le faire via l'interface graphique, procédez comme suit:
la source