tödlich:scheint kein Git-Repository zu sein
-
27-10-2019 - |
Frage
Warum erhalte ich diese Fehlermeldung, wenn die URL meines Git-Repositorys korrekt ist?
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)
Bearbeiten:Original ersetzt Bildschirmfoto
BEARBEITEN:
fatal: 'git@skarp.beanstalkapp.com/gittest.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly
Lösung
Sie haben die Syntax für die scp
-Style Art, ein Repository etwas falsch anzugeben - muss es sein:
[user@]host.xz:path/to/repo.git/
... wie Sie in der sehen können Git -Klon Dokumentation. Sie sollten stattdessen die URL verwenden:
git@skarp.beanstalkapp.com:/gittest.git
dh in der URL, die Sie verwenden, haben Sie die verpasst :
(Doppelpunkt)
So aktualisieren Sie die URL für den Ursprung, den Sie tun könnten:
git remote set-url origin git@skarp.beanstalkapp.com:/gittest.git
Andere Tipps
Ich traf ein ähnliches Problem, als ich versuchte, mein vorhandenes Repo in meinem zu speichern Ubunt One
Konto, ich habe es durch die folgenden Schritte behoben:
Schritt 1: Remote-Repo erstellen
$ cd ~/Ubuntu\ One/
$ mkdir <project-name>
$ cd <project-name>
$ mkdir .git
$ cd .git
$ git --bare init
Schritt-2: Fügen Sie die Fernbedienung hinzu
$ git remote add origin /home/<linux-user-name>/Ubuntu\ One/<project-name>/.git
Schritt 3: Drücken
$ git push -u origin --all
Dies liegt normalerweise daran, dass Sie den Ursprungsalias nicht in Ihrem Git-Repository festgelegt haben.
Versuchen
git remote add origin URL_TO_YOUR_REPO
Dadurch wird Ihrem Konto ein Alias hinzugefügt .git/config
Datei für die Remote-Clone-/Push-/Pull-Site-URL.Diese URL finden Sie auf Ihrer Repository-Übersichtsseite.
Meine lokalen und Remote-Rechner sind beide OS X.Ich hatte Probleme, bis ich die Dateistruktur des Git-Repos überprüfte, das mir xCode Server zur Verfügung stellt.Im Wesentlichen ist in diesem Repo alles chmod 777 *. Um also ein separates Nicht-xCode-Repo auf demselben Computer in meinem Remote-Konto einzurichten, habe ich Folgendes getan:
FERNBEDIENUNG DER MASCHINE
- Melde dich in deinem Konto an
- Erstellen Sie ein Master-Verzeichnis für alle Projekte „mkdir git“
- chmod 775 git dann cd hinein
- Erstellen Sie einen Projektordner „mkdir project1“
- chmod 777 project1 dann cd hinein
- Führen Sie den Befehl „git init“ aus, um das Repo zu erstellen
- Dadurch wird ein .git-Verzeichnis erstellt.Führen Sie den Befehl „chmod 777 .git“ aus und geben Sie dann eine CD ein
- Führen Sie den Befehl „chmod 777 *“ aus, um alle Dateien in .git 777 mod zu machen
- cd zurück zu myproject1 (cd ..)
- Richten Sie eine Testdatei im neuen Repo mit dem Befehl „touch test.php“ ein.
- Fügen Sie es mit dem Befehl „git add test.php“ zum Repo-Staging-Bereich hinzu.
- Führen Sie den Befehl „git commit -m ‚new file‘“ aus, um die Datei zum Repo hinzuzufügen
- Führen Sie den Befehl „git status“ aus und Sie sollten die Meldung „working dir clean“ erhalten
- CD zurück zum Master-Verzeichnis mit „cd ..“
- Erstellen Sie im Master-Verzeichnis einen Symlink „ln -s project1 project1.git“.
- Führen Sie den Befehl „pwd“ aus, um den vollständigen Pfad zu erhalten
- in meinem Fall war der vollständige Pfad „/Users/myname/git/project1.git“.
- Notieren Sie sich den vollständigen Pfad zur späteren Verwendung in der URL
- Verlassen Sie die REMOTE-MASCHINE
LOKALE MASCHINE
- Erstellen Sie irgendwo einen Projektordner „newproj1“ mit „mkdir newproj1“.
- CD hinein
- Führen Sie den Befehl „git init“ aus.
- Erstellen Sie einen Alias für die REMOTE-MASCHINE
- Das Alias-Befehlsformat ist „git remote add your_alias_here URL“.
- Stellen Sie sicher, dass Ihre URL korrekt ist.Das bereitete mir zunächst Kopfschmerzen
- URL = 'ssh://user@www.somemachine.com/Users/myname/git/project1.git'
- Nachdem Sie „git remote add alias URL“ ausgeführt haben, führen Sie „git remote -v“ aus.
- Der Befehl sollte mit einer Fetch- und Push-Zeile antworten
- Führen Sie cmd „git pull your_alias master“ aus, um test.php vom REMOTE-Repo abzurufen
- Nach dem Befehl in #10 sollten Sie eine nette Meldung sehen.
- Führen Sie den Befehl „git push --set-upstream your_alias master“ aus.
- Nach dem Befehl in 12 sollten Sie eine nette Nachricht sehen
- Der Befehl in Nr. 12 richtet REMOTE als Projektmaster (Root) ein.
Ich habe gelernt, dass ein sauberer Start mit einem Git-Repo auf LOCAL und REMOTE zunächst alle anfänglichen Arbeiten in einer Shell erfordert.Nach dem oben genannten konnte ich die lokalen und abgelegenen Git -Repos in meiner IDE leicht einrichten und alle grundlegenden Git -Befehle mit der GUI der IDE durchführen.
Ich hatte Schwierigkeiten, bis ich zuerst auf der Fernbedienung anfing, dann auf der lokalen Seite und bis ich alle Berechtigungen auf der Fernbedienung öffnete.Darüber hinaus war es für den Erfolg entscheidend, den genauen vollständigen Pfad in der URL zum Symlink zu haben.
Auch dies funktionierte alles unter OS X, lokalen und Remote-Rechnern.
Ich hatte ein ähnliches Problem bei der Verwendung von TFS 2017. Ich konnte keine Git -Repositories drücken oder ziehen. Schließlich habe ich TFS 2017 neu installiert und sichergestellt, dass ich TFS 2017 mit einem SSH -Anschluss von 22 installiert habe (in meinem Fall habe ich 8022 gewählt). Danach wurde Push and Pull gegen TFs mit SSH möglich.
Es ist höchstwahrscheinlich, dass Sie die SSH -URL Ihres Repos falsch verstanden haben.
Um zu bestätigen, gehen Sie zu Ihrem Repository auf GitHub und klicken Sie auf die clone or download button
. Klicken Sie dann auf die use SSH
Verknüpfung.
Kopieren Sie jetzt Ihre offiziell Repos SSH -Link. Meins sah so aus - - git@github.com:borenho/que-ay.git
Sie können jetzt tun git remote add origin git@github.com:borenho/que-ay.git
Wenn Sie nicht hätten origin
noch.
Wenn Sie eingestellt hätten origin
Ändern Sie es vorher, indem Sie es verwenden git remote set-url origin git@github.com:borenho/que-ay.git
Jetzt drängen mit git push -u origin master
Ich habe ein ähnliches Problem, aber jetzt kenne ich den Grund.
Nachdem wir benutzt haben git init
, Wir sollten ein Remote -Repository mithilfe des Remote -Repositorys hinzufügen
git remote add name url
Achten Sie auf das Wort name
, wenn wir es an ändern origin
, Dann wird dieses Problem nicht passieren.
Natürlich, wenn wir es an ändern py
, dann verwendet git pull py branch
und git push py branch
Jedes Mal, wenn Sie ziehen und drücken, wird auch etwas in Ordnung sein.