621 Stimmen

git: fatal: Konnte nicht vom entfernten Repository lesen

Ich versuche, Git einzurichten mit http://danielmiessler.com/study/git/#website um meine Website zu verwalten.

Ich bin beim letzten Schritt der Anleitung angelangt: git push website +master:refs/heads/master

Ich verwende die git ming32-Befehlszeile unter Win7

$ git push website +master:refs/heads/master
Bill@***.com's password:
Connection closed by 198.91.80.3
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Ein Problem könnte sein, dass das Programm nach Bill@***.com sucht. Wenn ich mich über ssh mit meiner Website verbinde, habe ich einen anderen Benutzernamen (sagen wir mal 'abc'), also sollte es vielleicht abc@***.com sein. Wenn ja, weiß ich nicht, wie ich das ändern kann oder ob ich unter einem Alias pushen kann.

520voto

Johnny Cage Punkte 4241

Ihr ssh-Schlüssel wurde höchstwahrscheinlich aus ssh agent entfernt

ssh-add ~/.ssh/id_rsa

wobei id_rsa ein mit dem Git Repo verbundener SSH-Schlüssel ist

Update

Sie können erhalten Could not open a connection to your authentication agent. Fehler zu beheben, müssen Sie zunächst den Agenten starten:

eval `ssh-agent -s`

299voto

Manish Nakar Punkte 3760

Ich hatte vor einiger Zeit dasselbe Problem...

meine .git/config hatte

url = git@github.com:manishnakar/polymer-demo.git

Ich ersetzte sie durch

url = https://github.com/manishnakar/polymer-demo.git 

und es funktioniert jetzt:)

166voto

rob mayoff Punkte 356759

Sie können den Benutzernamen, den SSH an das entfernte System senden soll, als Teil der URL Ihrer Gegenstelle angeben. Geben Sie den Benutzernamen, gefolgt von einem @ vor dem entfernten Hostnamen.

git remote set-url website abc@***.com:path/to/repo

162voto

Tombart Punkte 27954

Vergewissern Sie sich, dass Sie die korrekte Url in .git/config

url = git@github.com:username/repo.git

Wenn es sich um Ihren ersten Push handelt, müssen Sie die korrekten Upstream-Einstellungen vornehmen

$ git push -u origin master

Sie können überprüfen, welcher Schlüssel von verwendet wird:

$ ssh -vvv git@github.com

Die Antwort sollte in etwa so lauten:

debug1: Next authentication method: publickey
debug1: Offering RSA public key: ~/.ssh/id_rsa
...
You've successfully authenticated, but GitHub does not provide shell access.

Es ist auch möglich, Regeln für ssh zu definieren in ~/.ssh/config z. B. auf der Grundlage von Aliasen:

   Host github
      HostName github.com 
      User git
      IdentityFile "~/.ssh/id_rsa"

   Host git
      HostName github.com 
      User git
      IdentityFile "~/.ssh/some_other_id"

Sie können für jeden Alias eine Verbindung zu verschiedenen Ports herstellen, einen anderen Benutzernamen verwenden usw.

36voto

Foreever Punkte 6344

Ich hatte einen falschen privaten ssh-Schlüssel für Bitbucket zusammen mit dem richtigen in ssh agent.

Zuerst alle Schlüssel gelöscht

ssh-add -D

Dann fügte er genau den richtigen Schlüssel hinzu.

ssh-add ~/.ssh/id_rsa

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X