J'ai un référentiel moodle
sur mon compte Github que jeforked
du référentiel officiel.
Je l'ai ensuite cloné sur ma machine locale. Cela a bien fonctionné. J'ai créé plusieurs succursales (sous lemaster
branche). J'ai fait plusieurs commits et cela a bien fonctionné.
Je ne sais pas comment j'obtiens l'erreur suivante lorsque je le fais: git push origin master
fatal: 'origin' does not appear to be a git repository
fatal: The remote end hung up unexpectedly
Comment résoudre l'erreur sans affecter mon référentiel sur Github?
j'utilise Ubuntu 12.10
Le contenu de mon .git/config
après avoir fait cat $(git rev-parse --show-toplevel)/.git/config
donne:
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[branch "master"]
[branch "MOODLE_23_STABLE"]
[branch "MOODLE_24_STABLE"]
[remote "upstream"]
url = git://git.moodle.org/moodle.git
fetch = +refs/heads/*:refs/remotes/upstream/*
cat $(git rev-parse --show-toplevel)/.git/config
Réponses:
$HOME/.gitconfig
est votre configuration globale pour git.Il existe trois niveaux de fichiers de configuration .
( Mentionné par Bereal ) est votre locale config, local au repo que vous avez cloné.
vous pouvez également taper à partir de votre repo:
Et voyez si une télécommande nommée «origine» y est répertoriée.
Sinon, si cette télécommande (qui est créée par défaut lors du clonage d'un dépôt) est manquante, vous pouvez l'ajouter à nouveau:
Le PO mentionne:
Donc '
origin
' manque: la référence à votre fourchette.Voir " Quelle est la différence entre
origin
etupstream
dans github "la source
git remote -v
donne:upstream git://git.moodle.org/moodle.git (fetch)
upstream git://git.moodle.org/moodle.git (push)
git push -u ghy master
.J'ai rencontré le même problème lorsque j'ai renommé mon référentiel sur GitHub. J'ai essayé de pousser à quel point j'ai eu l'erreur
J'ai dû changer l'URL en utilisant
Après cela, toutes les commandes ont commencé à fonctionner correctement. Vous pouvez vérifier le changement en utilisant
Dans mon cas, après un changement réussi, il a montré un dépôt renommé correct dans l'URL
la source
Il est possible que l'autre branche à partir de laquelle vous essayez de vous extraire ne soit pas synchronisée; donc avant d'ajouter et de supprimer la télécommande, essayez de (si vous essayez de tirer du maître)
pour moi, ce simple appel a résolu ces messages d'erreur:
la source
Essayez d'abord de créer une origine distante, peut-être est-elle manquante car vous changez le nom du référentiel distant
git remote add origine URL_TO_YOUR_REPO
la source
Cela ne répond pas à votre question, mais j'ai rencontré un message d'erreur similaire, mais pour une raison différente. Permettez-moi de faire mon message dans un souci de collecte d'informations.
J'ai un dépôt git sur un lecteur réseau. Appelons ce disque réseau RAID. J'ai cloné ce repo sur ma machine locale (LOCAL) et sur mon cluster de numérisation (CRUNCHER). Pour plus de commodité, j'ai monté le répertoire des utilisateurs de mon compte sur CRUNCHER sur ma machine locale. Ainsi, je peux manipuler des fichiers sur CRUNCHER sans avoir besoin de faire le travail dans un terminal SSH.
Aujourd'hui, je modifiais des fichiers dans le repo sur CRUNCHER via ma machine locale. À un moment donné, j'ai décidé de valider les fichiers, donc a fait un commit. L'ajout des fichiers modifiés et le commit ont fonctionné comme prévu, mais quand j'ai appelé
git push
j'ai reçu un message d'erreur similaire à celui publié dans la question.La raison était que j'ai appelé
push
depuis le repo sur CRUNCHER sur LOCAL. Ainsi, tous les chemins du fichier de configuration étaient tout simplement faux.Quand j'ai réalisé ma faute, je me suis connecté à CRUNCHER via Terminal et j'ai pu pousser le commit.
N'hésitez pas à commenter si mon explication ne peut être comprise, ou si vous trouvez mon message superflu.
la source
J'ai eu la même erreur sur git pull origin branchname lors de la définition de l'origine distante comme chemin fs et non ssh dans .git / config :
C'était comme ça (cela ne fonctionne que pour les utilisateurs du même serveur de git qui ont accès à git):
Fixé comme tel (cela fonctionne sur tous les utilisateurs qui ont accès à git user (ssh authorizes_keys ou mot de passe)):
la raison pour laquelle je l'avais comme chemin de répertoire était parce que les fichiers git sont sur le même serveur.
la source
/
domaine après doit être:
si vous utilisez SSH. Vérifiez simplement avecgit remote -v
.