498

http://danielmiessler.com/study/git/#websiteで git をセットアップして自分のサイトを管理しようとしています。

手順の最後のステップに到達しました: git push website +master:refs/heads/master

win7でgit ming32コマンドラインを使用して作業しています

$ 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.

ここでの問題の 1 つは、プログラムが Bill@***.com を探していることです。ssh 経由で自分のサイトに接続すると、別のユーザー名 (「abc」としましょう) を持っています。これは abc@***.com のはずです。もしそうなら、これを変更する方法がわからない、またはエイリアスでプッシュできるかどうかはわかりません

4

59 に答える 59

220

私は少し前に同じ問題に直面していました...

私の .git/config が持っていた

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

私はそれを

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

そしてそれは今動作します:)

于 2015-12-04T05:38:22.613 に答える
159

リモートの URL の一部として、SSH がリモート システムに送信するユーザー名を指定できます。@リモート ホスト名の前に、ユーザー名を入力し、その後に , を付けます。

git remote set-url website abc@***.com:path/to/repo
于 2012-11-22T09:24:04.707 に答える
148

正しい URL があることを確認してください.git/config

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

初めてプッシュする場合は、正しいアップストリームを設定する必要があります

$ git push -u origin master

どのキーが使用されているかは、次の方法で確認できます。

$ ssh -vvv git@github.com

返信には次のような内容が含まれている必要があります。

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

~/.ssh/configまた、たとえばエイリアスに基づいて、で ssh のルールを定義することもできます。

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

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

異なるポートへの接続を設定したり、エイリアスごとに異なるユーザー名を使用したりできます。

于 2013-12-21T00:51:58.760 に答える
26

で GIT_SSH 環境変数を削除してみてくださいunset GIT_SSH。これが私の問題の原因でした。

于 2014-07-30T17:25:15.507 に答える
25

これは通常、SSH キーがリモートと一致しないために発生します。

ソリューション:

  1. ターミナルに移動し、次のコマンド (Mac、Linux) を入力して、電子メール ID に置き換えます。

    ssh-keygen -t rsa -C "you@email.com"

  2. 単語 ssh から始まる次のコマンドを使用して、生成されたキーをコピーします。

    猫 ~/.ssh/id_rsa.pub

  3. リモートのそれぞれの github、bitbucket、または gitlab に貼り付けます。
  4. それを保存。
于 2015-09-27T11:45:28.910 に答える
8

同じエラーが発生しました。解決策は次のとおりです。 の URL を修正しました.git/config。それを HTTPS クローン URL からコピーしただけです。それは次のようなものです。

url = https://github.com/*your*git*name*/*your*git*app*.git

出来た。

于 2015-01-23T21:05:01.890 に答える
8

別の回避策:

ネットワークの問題が原因で、これが発生することがあります。根本的な問題を完全には理解していませんが、別のサブネットワークに切り替えるか、VPN を使用すると解決します

于 2015-06-22T15:07:45.193 に答える
4

.git/config ファイル内

[remote "YOUR_APP_NAME"]
    url = git@heroku.com:YOUR_APP_NAME.git
    fetch = +refs/heads/*:refs/remotes/YOUR_APP_NAME/*

そして単純に

git push YOUR_APP_NAME master:master 
于 2013-07-27T20:20:26.667 に答える
4

Gitlab を使用している場合は、プルまたはプッシュを試みる前に、ログインして Gitlab の新しい条件に同意する必要がある場合があります。

于 2018-05-23T18:52:17.247 に答える
4

2020年10月更新

ほとんどの場合、複数のユーザーが同じクライアント システムから同じ git サーバーにアクセスしている場合、そのとき git サーバーは、両方のユーザーが許可されているユーザーのアクセス キーと混同されますが、コマンドを起動すると、そのときはデフォルト ユーザーが使用されます。

ssh -T git@gitlab.com

そのユーザーと一緒にプッシュしようとしているアクティブなユーザーを確認します

簡単な解決策は、未使用のユーザー公開鍵を git サーバーから削除することです。

次に、git fetch または pull を試してみてください。

于 2020-10-13T11:14:26.420 に答える
3

私の場合、パスワード付きのsshキーを使用してgithubで認証していました。Windowsでページェントを適切に設定していませんでした(cygwinのみ)。欠けていた手順は、git_ssh 環境変数を plink.exe にポイントすることでした。また、github.com を plink known_hosts に入れる必要があります。

   plink github.com
   y
   <then ctrl-c>

お役に立てれば!

intellij がもっと便利なエラーを表示してくれたらよかったのにと思います。

于 2016-09-05T01:22:23.590 に答える
3

私はちょうど今問題を解決し、次のように修正します: git config user.email "youremail"


更新: 根本的な原因は、ネットワークが貧弱で、プロキシが貧弱である可能性があります。なぜそれが起こったのかはまだわかりませんが、このエラーが発生するたびに、このコマンドが機能します!!!

于 2019-09-21T07:35:18.483 に答える
3

Git には HTTPS を使用する必要があります。

これをターミナルに入力します。

$ git remote set-url origin abc@***.com:path/to/httpURLRepo

次にコミットします。

$ git add .
$ git commit -m "This is the commit message"
于 2020-05-07T18:26:21.537 に答える
2

実際、SSH exectun from native を build-it と backwards に変更し、同じエラーが発生して以来、Win7 で動作させるために多くのことを試みました。偶然、「.git/config」ファイルで次のように HTTPS に変更します。

[remote "origin"]
        url = https://github.com/user_name/repository_name.git
        fetch = +refs/heads/*:refs/remotes/origin/*

そしてそれは最終的に機能しました。だから多分それはあなたのためにもうまくいくかもしれません.

于 2016-03-09T22:13:53.027 に答える
2

私の場合、オフィスで企業ネットワーク (インターネット接続なし) を使用しています。github からコードをプルするために、gitbash で https プロキシを設定し、ssh の代わりに https を使用してコードをプルすると、正常に動作します。ただし、コードをプッシュする場合、https プロキシは機能しません。そのため、インターネット ネットワーク (インターネット接続あり) に切り替えるか、ssh プロキシを設定することで問題を解決できます。

于 2015-07-08T11:00:23.760 に答える
2
user@server:/etc/nginx$ cat .git/config 
...
[remote "origin"]
    url = git@gitlab.com:user/.git
    fetch = +refs/heads/*:refs/remotes/origin/*
...

  1. https の代わりに ssh を使用します。
  2. git で ssh キーを使用するには (ssh キーを追加します)。
  3. root の場合は、ssh キーを使用します。

$ sudo ssh-keygen
$ cat /root/.ssh/id_rsa.pub 

$ git init
$ git add file
$ git commit -m "add first file"
$ git remote add origin git@gitlab.com:user/example.git 
$ git push -u origin master
于 2017-09-18T00:31:02.570 に答える
1

私の場合、それはpostBufferでした..

git config --global http.postBuffer 524288000

参照用: https://gist.github.com/marcusoftnet/1177936

于 2016-01-04T16:05:28.390 に答える
1

同じ問題があり、最新の git バージョンに更新することで解決しました

于 2020-10-20T11:03:23.797 に答える
1

私の場合、 recievepack またはuploadpackを設定 した場合、誤って設定した後にエラーが発生しました

receivepack = powershell git receive-pack

私の場合は.git/config

以下の回答のようにそれらを削除できます

https://stackoverflow.com/a/26207308/7668448

または直接変更することによって.git/config

于 2020-04-11T07:43:29.597 に答える
1

この問題は断続的に発生していましたが、ほとんどの場合、エラー メッセージは表示されませんでした。私にとっての解決策は、LDAP サーバーの IP アドレスが変更された後に LDAP を正しく構成することでした。

LDAPの/etc/gitlab/gitlab.rb構成が存在しない IP アドレスを指していたため、LDAP サーバーの適切なホスト名を指すようにホストを変更すると、問題が修正されました。

問題を診断するには、gitlab-ctl tailコマンドを使用してスタック トレースを見つけます。私にとっては、このスタックトレースを見つけました:

==> /var/log/gitlab/gitlab-rails/production.log <==

Net::LDAP::Error (No route to host - connect(2) for 10.10.10.12:389):
  /opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/net-ldap-0.16.0/lib/net/ldap/connection.rb:72:in `open_connection'
...

でホスト値を変更します。/etc/gitlab/gitlab.rb

gitlab_rails['ldap_servers'] = YAML.load <<-'EOS'
   main: 
     label: 'My LDAP'
     # this was an IP address
     # host: '10.10.10.12'
     host: 'internal-ldap-server' # this is the fix
     port: 389

上記の設定ファイルを変更したら、必ず gitlab を再設定してください

gitlab-ctl reconfigure
于 2019-04-15T18:05:47.790 に答える
0

プライベートリモートレポでこの問題を抱えている人向け。リモートサーバーで Xcode 契約に同意したことを確認してください。この修正を見つけるのに数週間かかりました

コマンド ラインから次のコマンドを使用します: sudo xcodebuild -license

于 2014-11-08T16:27:28.303 に答える
0

putty/pageant を使用する場合、pageant に正しい SSH キーを追加することを忘れていないことを確認してください。そうしないと、このエラーが表示されます。当たり前

于 2015-10-14T14:50:11.810 に答える
0

そのための簡単な修正を見つけたことを共有したかっただけです:

アクセス拒否。致命的: リモート リポジトリから読み取れませんでした。正しいアクセス権があり、リポジトリが存在することを確認してください。

gitlab からログアウトして、再度ログインするだけです。その後、問題を修正する必要があります。

于 2015-06-14T18:36:23.727 に答える
0

それでも同じエラーが発生する場合は、git 設定 -> ssh タブ -> 使用する ssh クライアントがopenSSHに設定されていることを確認してください。ここに画像の説明を入力

于 2016-08-30T11:21:14.093 に答える
0

エラーパスワードを何度も入力すると、この問題が発生します。

そのため、MaxAuthTries をより大きな数に変更する必要があります。

sshd_configサーバー側で開きます。

vim  /etc/ssh/sshd_config

MaxAuthTries の数を変更します。

MaxAuthTries 100    # there I change to 100, you can change to a bigger than your current tries number
于 2019-09-09T09:16:31.547 に答える