J'ai un référentiel moodle
sur mon compte Github que je forked
du référentiel officiel.
Je l'ai ensuite cloné sur ma machine locale. Cela a bien fonctionné. J'ai créé plusieurs branches (sous la branche master
). J'ai fait plusieurs commits et cela a bien fonctionné.
Je ne sais pas comment je reçois l'erreur suivante quand 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 utilisé 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/*
$HOME/.gitconfig
est votre configuration globale pour git.
Il y a trois niveaux sur fichiers de configuration .
cat $(git rev-parse --show-toplevel)/.git/config
( mentionné par bereal ) est votre config local, local du référentiel que vous avez cloné.
vous pouvez également taper depuis votre dépôt:
git remote -v
Et voyez s'il y a une distance nommée 'Origine' listée dans celle-ci.
Sinon, si cette télécommande (qui est créée par défaut lors du clonage d'un référentiel) est manquante, vous pouvez l'ajouter à nouveau:
git remote add Origin url/to/your/fork
Le PO mentionne:
Faire
git remote -v
donne:
upstream git://git.moodle.org/moodle.git (fetch)
upstream git://git.moodle.org/moodle.git (Push)
Donc 'Origin
' est manquant: la référence à votre fork.
Voir " Quelle est la différence entre Origin
et upstream
dans github "
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
fatal: 'Origin' does not appear to be a git repository
fatal: The remote end hung up unexpectedly
J'ai dû changer l'URL en utilisant
git remote set-url Origin ssh://[email protected]/username/newRepoName.git
Après cela, toutes les commandes ont bien fonctionné. Vous pouvez vérifier le changement en utilisant
git remote -v
Dans mon cas, après un changement réussi, il montrait le référentiel renommé correct dans l'URL
[aniket@alok Android]$ git remote -v
Origin ssh://[email protected]/aniket91/TicTacToe.git (fetch)
Origin ssh://[email protected]/aniket91/TicTacToe.git (Push)
Il est possible que l’autre branche dont vous essayez de tirer ne soit pas synchronisée; donc avant d'ajouter et de supprimer à distance essayez de (si vous essayez de tirer de maître)
git pull Origin master
pour moi, ce simple appel a résolu ces messages d'erreur:
Cela ne répond pas à votre question, mais j'ai été confronté à un message d'erreur similaire, mais pour une raison différente. Permettez-moi de faire mon post pour la collecte d'informations.
J'ai un repo Git sur un lecteur réseau. Appelons ce lecteur réseau RAID. J'ai cloné ce référentiel sur ma machine locale (LOCAL) et sur mon cluster de calcul numérique (CRUNCHER). Pour plus de commodité, j'ai monté le répertoire utilisateur de mon compte sur CRUNCHER sur mon ordinateur local. Ainsi, je peux manipuler des fichiers sur CRUNCHER sans avoir à effectuer le travail dans un terminal SSH.
Aujourd'hui, je modifiais des fichiers dans le dépôt sur CRUNCHER via ma machine locale. À un moment donné, j'ai décidé de valider les fichiers, alors un commit a été effectué. L'ajout des fichiers modifiés et la validation ont fonctionné comme prévu, mais lorsque j'ai appelé git Push
, un message d'erreur semblable à celui posté dans la question a été reçu.
La raison en est que j’ai appelé Push
à partir de la réserve sur CRUNCHER en LOCAL. Ainsi, tous les chemins du fichier de configuration étaient tout à fait 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 pas être comprise ou si vous trouvez mon post superflu.
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:
fatal: '/path/to/repo.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly
C'était comme ça (cela ne fonctionne que pour les utilisateurs sur le même serveur de git ayant accès à git):
url = file:///path/to/repo.git/
Corrigé comme ceci (cela fonctionne sur tous les utilisateurs ayant accès à tilisateur git (ssh authorizes_keys ou mot de passe)):
url = [email protected]:path/to/repo.git
la raison pour laquelle je l'avais comme chemin de répertoire était parce que les fichiers git sont sur le même serveur.