97 votes

fatal : ne semble pas être un dépôt git

Pourquoi est-ce que j'obtiens cette erreur alors que l'url de mon dépôt git est correcte ?

jitendra@JITENDRA-PC /c/mySite (master)
$ git push beanstalk master
fatal: 'git@skarp.beanstalkapp.com/gittest.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

jitendra@JITENDRA-PC /c/mySite (master)
$ git clone git://github.com/jquery/jquery.git
Cloning into jquery...
Remote: Counting objects: 19803, done.
Remote: Compressing objects: 100% (5196/5196), done.
Remote: Total 19803 (delta 14204), reused 19549 (delta 14052)
Receiving objects: 100% (19803/19803), 12.80 MiB | 591 KiB/s, done.
Resolving deltas: 100% (14204/14204), done.

jitendra@JITENDRA-PC /c/mySite (master)
$ gitk --all

jitendra@JITENDRA-PC /c/mySite (master)
$ gitk -all

jitendra@JITENDRA-PC /c/mySite (master)
$ git remote add origin git@skarp.beanstalkapp.com/gittest.git

jitendra@JITENDRA-PC /c/mySite (master)
$ git push origin master
fatal: 'git@skarp.beanstalkapp.com/gittest.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

jitendra@JITENDRA-PC /c/mySite (master)

Edit : Remplacé l'original capture d'écran

EDITAR:

fatal: 'git@skarp.beanstalkapp.com/gittest.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

0 votes

Vous êtes sûr que c'est bon ? Pouvez-vous cloner à partir de gettest.git ? Vous clonez un autre jquery dans l'exemple ci-dessus.

0 votes

Je veux ajouter mon dossier+fichiers locaux à mon hébergement git

28 votes

Pour référence future, veuillez inclure le texte dans les questions - en tant que texte. Les images de texte sont mises hors ligne, et même si elles ne le sont pas, elles empêchent de copier et coller, etc.

93voto

Mark Longair Points 93104

Vous avez la syntaxe pour le scp -pour spécifier un dépôt est légèrement erronée - elle doit l'être :

[user@]host.xz:path/to/repo.git/

... comme vous pouvez le voir dans le clone git documentation. Vous devriez plutôt utiliser l'URL :

git@skarp.beanstalkapp.com:/gittest.git

c'est-à-dire que dans l'URL que vous utilisez, vous avez omis l'élément : (colon)

Pour mettre à jour l'URL d'origine, vous pouvez le faire :

git remote set-url origin git@skarp.beanstalkapp.com:/gittest.git

1 votes

Merci. Mais alors pourquoi je n'ai pas eu d'erreur quand j'ai ajouté remote.

0 votes

Maintenant, j'ai essayé avec git@skarp.beanstalkapp.com:/gittest.git mais je reçois une erreur remote origin already exists

4 votes

Vous pouvez d'abord supprimer la télécommande d'origine avec git remote rm origin puis l'ajouter à nouveau. Ensuite, lors de votre première poussée, vous pouvez ajouter l'élément -u (c'est-à-dire git push -u origin master ) si vous voulez master dans ce dépôt pour être votre amont par défaut pour votre master .

29voto

DailyEfforts Points 101

J'ai rencontré un problème similaire lorsque j'ai essayé de stocker mon repo existant dans mon fichier Ubunt One J'ai résolu le problème en suivant les étapes suivantes :

Étape 1 : créer le dépôt distant

$ cd ~/Ubuntu\ One/
$ mkdir <project-name>
$ cd <project-name>
$ mkdir .git
$ cd .git
$ git --bare init

Étape 2 : ajouter la télécommande

$ git remote add origin /home/<linux-user-name>/Ubuntu\ One/<project-name>/.git

Etape 3 : pousser le git reop existant vers le distant.

$ git push -u origin --all

21voto

rizon Points 2751

C'est généralement parce que vous n'avez pas défini l'alias d'origine sur votre dépôt Git.

Essayez

git remote add origin URL_TO_YOUR_REPO

Cela ajoutera un alias dans votre .git/config pour l'URL du site clone/push/pull distant. Cette URL se trouve sur la page de présentation de votre référentiel.

6voto

JamesAD-0 Points 679

Mes machines locales et distantes sont toutes deux sous OS X. J'avais des problèmes jusqu'à ce que je vérifie la structure des fichiers du dépôt git que xCode Server me fournit. Essentiellement tout est chmod 777 * dans ce repo donc pour configurer un repo séparé non xCode sur la même machine dans mon compte distant, j'ai fait ceci :

MACHINE À DISTANCE

  1. Connectez-vous à votre compte
  2. Créer un répertoire principal pour tous les projets 'mkdir git'.
  3. chmod 775 git puis cd dans celui-ci
  4. Créez un dossier de projet 'mkdir project1'.
  5. chmod 777 project1 puis cd dans celui-ci
  6. Exécutez la commande 'git init' pour créer le repo.
  7. cela crée un répertoire .git. faites la commande 'chmod 777 .git' puis cd dedans
  8. Exécutez la commande 'chmod 777 *' pour que tous les fichiers dans .git soient mod 777
  9. cd retour vers monprojet1 (cd ..)
  10. créer un fichier de test dans le nouveau répertoire avec la commande 'touch test.php'.
  11. ajoutez-le à la zone de stockage du dépôt avec la commande 'git add test.php'.
  12. Exécutez la commande "git commit -m 'new file'" pour ajouter le fichier au dépôt.
  13. Exécutez la commande 'git status' et vous devriez obtenir le message "working dir clean".
  14. Retourner au répertoire principal avec 'cd ..'.
  15. dans le répertoire principal, créez un lien symbolique "ln -s project1 project1.git".
  16. Exécutez la commande 'pwd' pour obtenir le chemin complet.
  17. dans mon cas, le chemin complet était '/Users/myname/git/projet1.git'.
  18. noter le chemin complet pour une utilisation ultérieure dans l'URL
  19. sortir de la machine à distance

MACHINE LOCALE

  1. Créez un dossier de projet quelque part 'newproj1' avec 'mkdir newproj1'.
  2. cd en elle
  3. Exécuter la commande "git init".
  4. faire un alias de la MACHINE À DISTANCE
  5. le format de la commande d'alias est "git remote add your_alias_here URL".
  6. assurez-vous que votre URL est correcte. Cela m'a causé des maux de tête au début
  7. URL = 'ssh://user@www.somemachine.com/Users/myname/git/project1.git'
  8. après avoir fait "git remote add alias URL", faites "git remote -v".
  9. la commande doit répondre avec une ligne de récupération et de poussée.
  10. Exécutez la commande 'git pull your_alias master' pour obtenir test.php du dépôt distant.
  11. après la commande dans #10 vous devriez voir un beau message.
  12. Exécutez la commande 'git push --set-upstream your_alias master'.
  13. après la commande en 12, vous devriez voir un beau message
  14. La commande #12 définit REMOTE comme le maître du projet (Root).

En ce qui me concerne, j'ai appris que pour démarrer proprement avec un dépôt git sur un site LOCAL et REMOTE, il faut d'abord faire tout le travail initial dans un shell. Ensuite, après ce qui précède j'ai pu facilement configurer les dépôts git LOCAL et REMOTE dans mon IDE et effectuer toutes les commandes git de base en utilisant l'interface graphique de l'IDE.

J'ai eu des difficultés jusqu'à ce que je commence par le distant, puis le local, et jusqu'à ce que j'ouvre toutes les permissions sur le distant. De plus, avoir le chemin complet exact dans l'URL du lien symbolique était essentiel pour réussir.

Encore une fois, tout cela a fonctionné sur OS X, sur des machines locales et distantes.

4voto

Ruto Collins Points 875

Il est fort probable que vous vous soyez trompé dans l'URL SSH de votre dépôt.

Pour confirmer, allez dans votre dépôt sur Github et cliquez sur le bouton clone or download button . Cliquez ensuite sur le use SSH lien.

ssh link

Maintenant, copiez votre officiel le lien SSH du dépôt. Le mien ressemblait à ceci - git@github.com:borenho/que-ay.git

Vous pouvez maintenant faire git remote add origin git@github.com:borenho/que-ay.git si vous n'aviez pas origin encore.

Si vous aviez mis origin avant, changez-le en utilisant git remote set-url origin git@github.com:borenho/que-ay.git

Poussez maintenant avec git push -u origin master

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X