致命的:gitリポジトリではないようです


83

gitリポジトリのURLが正しいのになぜこのエラーが発生するのですか?

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)

編集:元のスクリーンショットを置き換えました

編集:

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

大丈夫ですか?gettest.gitからクローンを作成できますか?上記の例では、別の1つのjqueryのクローンを作成しています。
Preet Sangha 2011

ローカルフォルダーとファイルをgitホスティングに追加したい
Jitendra Vyas 2011

27
今後の参考のために、質問にテキストをテキストとして含めてください。テキストのイメージはオフラインにし、そうでない場合でも、彼らは、などをコピーして貼り付け防ぐ
AD7six

回答:


85

scpリポジトリを指定するスタイルの方法の構文が少し間違っています。次のようにする必要があります。

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

... gitcloneのドキュメントでわかるように。代わりに次のURLを使用する必要があります。

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

つまり、使用しているURLで、:(コロン)を見逃しました

オリジンのURLを更新するには、次のようにします。

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

1
ありがとう。しかし、リモートを追加したときにエラーが発生しなかった理由
Jitendra Vyas 2011

今、私は試してみましたgit@skarp.beanstalkapp.com:/gittest.gitが、エラーが発生しましたremote origin already exists
Jitendra Vyas 2011

3
最初にで元のリモコンを削除してから、git remote rm originもう一度追加できます。次に、最初のプッシュ時に、そのリポジトリでのデフォルトのアップストリームにしたい場合は、-uパラメータ(つまりgit push -u origin master)を追加することをお勧めmasterしますmaster
マークロングエア2011

削除と再追加が機能しました。なし-u。ありがとう。初めてバージョン管理を使用するバージョン管理は初めてです。
Jitendra Vyas 2011

[remote "origin"]のファイル ".git / config"を編集してURLを更新することもできます
dxvargas 2013

26

既存のリポジトリをUbunt Oneアカウントに保存しようとしたときに同様の問題が発生しました。次の手順で修正しました。

ステップ-1:リモートリポジトリを作成する

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

ステップ-2:リモートを追加する

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

ステップ-3:既存のgitreopをリモートにプッシュします

$ git push -u origin --all

18

これは通常、Gitリポジトリにオリジンエイリアスを設定していないためです。

試してみてください

git remote add origin URL_TO_YOUR_REPO

これにより.git/config、リモートクローン/プッシュ/プルサイトのURLのエイリアスがファイルに追加されます。このURLは、リポジトリの概要ページにあります。


5

ローカルマシンとリモートマシンはどちらもOSXです。xCodeServerが提供するgitリポジトリのファイル構造を確認するまで問題が発生していました。基本的にすべてがそのリポジトリ内のchmod777 *であるため、リモートアカウントの同じマシンに別の非xCodeリポジトリをセットアップするために次のようにしました。

リモートマシン

  1. あなたのアカウントにログイン
  2. すべてのプロジェクトのマスターディレクトリを作成します 'mkdir git'
  3. chmod 775git次にcdします
  4. プロジェクトフォルダを作成します 'mkdir project1'
  5. chmod 777project1をCDに挿入します
  6. コマンド「gitinit」を実行してリポジトリを作成します
  7. これにより、.gitディレクトリが作成されます。コマンド 'chmod 777 .git'を実行し、それにcdします
  8. コマンド 'chmod 777 *'を実行して、.git 777mod内のすべてのファイルを作成します
  9. myproject1にcdバックアウト(cd ..)
  10. コマンド「touchtest.php」を使用して新しいリポジトリにテストファイルを設定します
  11. コマンド「gitaddtest.php」を使用して、リポジトリのステージング領域に追加します。
  12. コマンド「gitcommit-m'new file '」を実行して、ファイルをリポジトリに追加します
  13. コマンド「gitstatus」を実行すると、「workingdirclean」メッセージが表示されます。
  14. 'cd ..'を使用してマスターディレクトリにcdバックします。
  15. マスターディレクトリでシンボリックリンクを作成します 'ln -s project1 project1.git'
  16. コマンド 'pwd'を実行して、フルパスを取得します
  17. 私の場合、フルパスは「/Users/myname/git/project1.git」でした。
  18. 後でURLで使用するためにフルパスを書き留めます
  19. REMOTEMACHINEを終了します

ローカルマシン

  1. 'mkdirnewproj1'を使用して 'newproj1'のどこかにプロジェクトフォルダを作成します
  2. それにcd
  3. コマンド 'gitinit'を実行します
  4. REMOTEMACHINEのエイリアスを作成します
  5. エイリアスコマンドの形式は「gitremoteadd your_alias_hereURL」です。
  6. URLが正しいことを確認してください。これは私に最初に頭痛を引き起こしました
  7. URL = 'ssh://user@www.somemachine.com/Users/myname/git/project1.git'
  8. 'git remote add aliasURL'を実行した後 'git remote -v'を実行します
  9. コマンドはフェッチとプッシュラインで応答する必要があります
  10. cmd'git pull your_alias master 'を実行して、REMOTEリポジトリからtest.phpを取得します
  11. #10のコマンドの後に、すばらしいメッセージが表示されるはずです。
  12. コマンドを実行します 'git push --set-upstream your_alias master'
  13. 12のコマンドの後、素敵なメッセージが表示されるはずです
  14. #12のコマンドは、REMOTEをプロジェクトマスター(ルート)として設定します

私にとって、LOCALでgitリポジトリを使用してクリーンなスタートを切ることを学びました。REMOTEでは、最初にシェルですべての初期作業を行う必要があります。次に、上記の後で、IDEでLOCALおよびREMOTE gitリポジトリを簡単にセットアップし、IDEのGUIを使用してすべての基本的なgitコマンドを実行することができました。

最初にリモートで開始し、次にローカルを実行し、リモートですべてのアクセス許可を開くまで、問題が発生しました。さらに、シンボリックリンクへのURLに正確なフルパスを含めることは、成功するために重要でした。

繰り返しますが、これはすべてOS X、ローカルおよびリモートマシンで機能しました。


どうもありがとうございました!ディレクトリのアクセス許可に問題があり、実際にそれらをリストしている投稿を見つけるのに永遠に時間がかかりました!
マイク

LOCAL MACHINEのポイント7にもコロンがありません...あまり役に立ちません:p
Carlo Wood

1

TFS 2017を使用しているときにも同様の問題が発生しました。GITリポジトリをプッシュしたり、プルしたりできませんでした。最終的にTFS2017を再インストールし、22とは異なるSSHポートを使用してTFS 2017をインストールしたことを確認しました(私の場合は8022を選択しました)。その後、SSHを使用したTFSに対するプッシュとプルが可能になりました。


1

リポジトリのSSHURLを間違えた可能性があります。

確認するには、Githubのリポジトリに移動し、をクリックしclone or download buttonます。次に、use SSHリンクをクリックします。

sshリンク

次に、公式リポジトリのSSHリンクをコピーします。私のはこんな感じだった-git@github.com:borenho/que-ay.git

まだgit remote add origin git@github.com:borenho/que-ay.git行っていない場合は、これで実行できますorigin

origin以前に設定したことがある場合は、を使用して変更してくださいgit remote set-url origin git@github.com:borenho/que-ay.git

今プッシュ git push -u origin master


0

私も同様の問題を抱えていますが、今ではその理由がわかりました。

を使用した後、を使用しgit initてリモートリポジトリを追加する必要があります

git remote add name url

単語nameに注意してください。これをに変更するとorigin、この問題は発生しません。

もちろん、に変更すればpy、何かを引っ張ったり押しgit pull py branchたりするgit push py branchたびに使っても大丈夫です。


1
あなたの知識を共有する努力に感謝します、しかしこれはOPの場合に起こったことではありません。質問は非常に異なります。
Shahbaz 2013

この以前の回答では、不足しているリモートURLを追加するようにすでに指示されていることに注意してください。

0

私は自分の機能ブランチの1つで同じ問題に直面していました。上記の解決策を試しましたが、何も機能しませんでした。私は次のことを行うことでこの問題を解決しました。

  • git pull originfeature-ブランチ名
  • git push
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.