認証済みのHTTPSを介してこのレポのコピーを複製することができました。いくつかコミットをしたので、GitHubサーバーにプッシュアウトしたいと思います。 Windows 7 x 64でCygwinを使用する。
C:\cygwin\home\XPherior\Code\lunch_call>git Push
Password:
error: The requested URL returned error: 403 while accessing https://MichaelDrog
[email protected]/derekerdmann/lunch_call.git/info/refs
fatal: HTTP request failed
冗長モードでも設定します。私はまだかなり困惑しています。
C:\cygwin\home\XPherior\Code\lunch_call>set GIT_CURL_VERBOSE=1
C:\cygwin\home\XPherior\Code\lunch_call>git Push
Password:
* Couldn't find Host github.com in the _netrc file; using defaults
* About to connect() to github.com port 443 (#0)
* Trying 207.97.227.239... * 0x23cb740 is at send pipe head!
* Connected to github.com (207.97.227.239) port 443 (#0)
* successfully set certificate verify locations:
* CAfile: C:\Program Files (x86)\Git/bin/curl-ca-bundle.crt
CApath: none
* SSL connection using AES256-SHA
* Server certificate:
* subject: 2.5.4.15=Private Organization; 1.3.6.1.4.1.311.60.2.1.3=US; 1.
3.6.1.4.1.311.60.2.1.2=California; serialNumber=C3268102; C=US; ST=California; L
=San Francisco; O=GitHub, Inc.; CN=github.com
* start date: 2011-05-27 00:00:00 GMT
* expire date: 2013-07-29 12:00:00 GMT
* subjectAltName: github.com matched
* issuer: C=US; O=DigiCert Inc; OU=www.digicert.com; CN=DigiCert High Ass
urance EV CA-1
* SSL certificate verify ok.
> GET /derekerdmann/lunch_call.git/info/refs?service=git-receive-pack HTTP/1.1
User-Agent: git/1.7.4.3282.g844cb
Host: github.com
Accept: */*
Pragma: no-cache
< HTTP/1.1 401 Authorization Required
< Server: nginx/1.0.4
< Date: Thu, 15 Sep 2011 22:44:41 GMT
< Content-Type: text/plain
< Connection: keep-alive
< Content-Length: 55
< WWW-Authenticate: Basic realm="GitHub"
<
* Ignoring the response-body
* Expire cleared
* Connection #0 to Host github.com left intact
* Issue another request to this URL: 'https://[email protected]/dereker
dmann/lunch_call.git/info/refs?service=git-receive-pack'
* Couldn't find Host github.com in the _netrc file; using defaults
* Re-using existing connection! (#0) with Host github.com
* Connected to github.com (207.97.227.239) port 443 (#0)
* 0x23cb740 is at send pipe head!
* Server auth using Basic with user 'MichaelDrogalis'
> GET /derekerdmann/lunch_call.git/info/refs?service=git-receive-pack HTTP/1.1
Authorization: Basic XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
User-Agent: git/1.7.4.3282.g844cb
Host: github.com
Accept: */*
Pragma: no-cache
< HTTP/1.1 401 Authorization Required
< Server: nginx/1.0.4
< Date: Thu, 15 Sep 2011 22:44:41 GMT
< Content-Type: text/plain
< Connection: keep-alive
< Content-Length: 55
* Authentication problem. Ignoring this.
< WWW-Authenticate: Basic realm="GitHub"
* The requested URL returned error: 401
* Closing connection #0
* Couldn't find Host github.com in the _netrc file; using defaults
* About to connect() to github.com port 443 (#0)
* Trying 207.97.227.239... * 0x23cb740 is at send pipe head!
* Connected to github.com (207.97.227.239) port 443 (#0)
* successfully set certificate verify locations:
* CAfile: C:\Program Files (x86)\Git/bin/curl-ca-bundle.crt
CApath: none
* SSL re-using session ID
* SSL connection using AES256-SHA
* old SSL session ID is stale, removing
* Server certificate:
* subject: 2.5.4.15=Private Organization; 1.3.6.1.4.1.311.60.2.1.3=US; 1.
3.6.1.4.1.311.60.2.1.2=California; serialNumber=C3268102; C=US; ST=California; L
=San Francisco; O=GitHub, Inc.; CN=github.com
* start date: 2011-05-27 00:00:00 GMT
* expire date: 2013-07-29 12:00:00 GMT
* subjectAltName: github.com matched
* issuer: C=US; O=DigiCert Inc; OU=www.digicert.com; CN=DigiCert High Ass
urance EV CA-1
* SSL certificate verify ok.
* Server auth using Basic with user 'MichaelDrogalis'
> GET /derekerdmann/lunch_call.git/info/refs HTTP/1.1
Authorization: Basic xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
User-Agent: git/1.7.4.3282.g844cb
Host: github.com
Accept: */*
Pragma: no-cache
* The requested URL returned error: 403
* Expire cleared
* Closing connection #0
error: The requested URL returned error: 403 while accessing https://MichaelDrog
[email protected]/derekerdmann/lunch_call.git/info/refs
fatal: HTTP request failed
これらは私が持っているgitとcurlのバージョンです。
C:\Users\XPherior>git --version
git version 1.7.4.msysgit.0
C:\Users\XPherior>curl --version
curl 7.21.7 (AMD64-pc-win32) libcurl/7.21.7 OpenSSL/0.9.8r zlib/1.2.5
Protocols: dict file ftp ftps Gopher http https imap imaps ldap pop3 pop3s rtsp
smtp smtps telnet tftp
Features: AsynchDNS GSS-Negotiate Largefile NTLM SSL SSPI libz
私はちょうど同じ問題を抱え、そして何が原因なのかを考え出したところです。
Githubはリポジトリを読み書きするssh方法しかサポートしていないようですが、httpsは「読み書き」も表示します。
だからあなたはあなたのPC上のあなたのリポジトリ設定をssh方法に変更する必要があります。
.git/config
ファイルを編集します。url=
の下に[remote "Origin"]
entryを見つけるurl=https://[email protected]/derekerdmann/lunch_call.git
からurl=ssh://[email protected]/derekerdmann/lunch_call.git
に変更してください。つまり、@
シンボルの前のすべてのテキストをssh://git
に変更します。config
ファイルを保存して終了します。 git Push Origin master
を使ってGitHub上のレポを同期することができますhttps
プロトコルを使用して確実にログインできるようにするには、最初に 認証資格情報 をgit Remote URIに設定する必要があります :
git remote set-url Origin https://[email protected]/user/repo.git
それからgit Push
を試みるときパスワードを頼まれる。
実際、これはhttp認証フォーマットです。パスワードも設定できます。
https://youruser:[email protected]/user/repo.git
あなたがこれをするならば、あなたのgithubパスワードはあなたの.gitディレクトリに平文で保存されることに注意するべきです、それは明らかに望ましくありません。
Sean's answer への1つの小さな追加。
手動で.git/config
ファイルを編集する代わりに、git remote set-url
コマンドを使用することができます。
あなたの場合それはあるべきです:
git remote set-url Origin ssh://[email protected]/derekerdmann/lunch_call.git
ドットファイルをいじってみるよりも、簡単でわかりやすいと思います。
リポジトリディレクトリの.git/config
ファイルを編集します。
セクションurl=
の下で[remote "Origin"]
エントリを探す
url=https://github.com/rootux/ms-Dropdown.git
からhttps://[email protected]/rootux/ms-Dropdown.git
に変更してください
USERNAME
はあなたのgithubユーザー名です。
SSHへの切り替えを提案する他の答えは、その点を見逃しています。 HTTPSはサポートされていますが、SSHパスフレーズではなくGITHUBパスワードでログインする必要があります(これは私と同じ正確なエラーを与えていたものでした)。
私は同じ問題を抱えていましたが、端末のパスワードプロンプトで実際のGitHubパスワードを使用するようにして、設定を変更せずに、またはSSHに頼ることなく解決策を修正しました。
これに注意することが重要な理由は、私の学校のような多くの公的機関がSSHをブロックしますがHTTPSを許可するということです(これが私が最初にHTTPS上でクローンを作成し始めた唯一の理由です)。
誰もが同じ問題を抱えているのに役立ちます願っています...
Mac OS Xでの同じエラーと解像度
GitHubで新しいアカウントを作成してプッシュしてみた
$ git Push -u Origin master
エラーが発生しました:
remote:NEWUSER/NEWREPO.gitに対する許可がOLDUSERに対して拒否されました。致命的:「 https://github.com/NEWUSER/NEWREPO.git/ 」にアクセスできません:要求されたURLがエラーを返しました:403
グローバルまたは現在のレポジトリにuser.nameを設定することで修正されているはずです。
$ git config –-global user.name NEWUSER
$ git config user.name NEWUSER
しかし、そうではありませんでした。
GitHubに関連付けられたOLDUSERをキーチェーンアクセスアプリの[パスワード]セクションから削除することで修正されました。その後、Pushコマンドは成功しました。
$ git Push -u Origin master
私は@deepwatersが古いバージョンに対して正しい答えを得たと思います。 HTTPS URLにはユーザー名が必要です。私はgit 1.7.0.4を持っていました、そして私がそれを追加するまでgit Push Origin master
はパスワードさえ要求しませんでした。
Gitをアップグレードしてください。 GitHubは https://help.github.com/articles/error-the-requested-url-returned-error-403 でこの質問に回答しました。
403コードは「禁止」です。サーバーはあなたの要求を見てそれを拒否しました。そのリポジトリにプッシュする権限がありますか?
私は実際にこれを非常に簡単に修正しました。リポジトリのクローンを作成した後に行ったのは、git設定ファイルの編集方法が違うだけです。リモートのOriginのURLは、デフォルトの config ファイルで編集する必要があるものです。以下のように見えるはずです
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "Origin"]
fetch = +refs/heads/*:refs/remotes/Origin/*
url = https://*username*@github.com/*username*/*repository*.git
[branch "master"]
remote = Origin
merge = refs/heads/master
理解した。 HTTPSでクローンしました。私の公開SSHキーを設定し、SSHを介してクローンを作成し、SSHをプッシュすることでそれを修正しました。
この後、「Push to Git」はうまくいきました。
ちょうどあなたのユーザー名を次のようにURLに追加してください: https://[email protected]/islam9/bootstrap-rtl
ssh ( Xiao による)または http urlsを使用しているときにパーミッションを拒否されたユーザーが403エラーを拒否した場合これらのコマンドを試してください。
>git config --global --unset-all credential.helper
>git config --unset-all credential.helper
管理者権限を持つ
>git config --system --unset-all credential.helper
一時的な修正のためにこれをしなさい
git Push -u https://username:[email protected]/username/repo_name.git master
から変更
url=https://[email protected]/derekerdmann/lunch_call.git
に
url=ssh://[email protected]/derekerdmann/lunch_call.git
できます!
"@"の前に "git"を忘れないでください。
私のenterprise
GitHubアカウントでは上記の答えはどれもうまくいきませんでした。 SSHキー生成方法でプッシュするには、以下の手順に従ってください。
Gitアカウントにアクセスしてレポを作成してください。
SSHキーを生成します。
ssh-keygen -t rsa -C "[email protected]"
GitHubアカウント設定の〜/ .ssh/id_rsa.pubファイルの内容をSSHキーにコピーします。 SSHキーをテストします。
ssh -T [email protected]
clone the repo:
git clone git://github.com/username/your-repository
今あなたのgitクローンフォルダにcdしてください:
git remote set-url Origin [email protected]:username/your-repository.git
それではファイルを編集して(READMEを試してください)、それから:
git add -A
git commit -am "my update msg"
git Push -u Origin master
更新:新しいリポジトリが作成されている間、新しいgitバージョンはファイルを持たないことを推奨するようです。そのため、空のリポジトリを作成します。
私にとってうまくいったこと:
私のレポは フォーク であり、それでも両親のレポとリンクしていました。
git remote -v
それがあなたのレポであるかどうかあなたに言うでしょう。
git remote set-url Origin https://github.com/USERNAME/OTHERREPOSITORY.git
リポジトリに再設定してからプッシュできるようにします。
URLの一部としてユーザー名を追加すると、このエラーはgitコマンドがhttpsではなくhttpを押すために発生します。 URLを設定してください
git remote set-url Origin https://<username>@github.com/Path_to_repo.git
その後パスワードの入力を求められます。
好奇心旺盛な人のために、私のMacマシン対lucid vmは1.7.6対1.7.0.4のgitを走らせました、そして全く同じレポは私のMacから追いやることができました(新しいgit)がVM
同じカールバージョン。おそらく、いくつかの古いgitバージョンはhttpsプッシュをサポートしていませんか?
私は同じエラーに直面し、原因はばかげていた - 私は選択されたリポジトリにコミットする権限がありませんでした。私がする必要があることを知りませんでした
https://help.github.com/categories/63/articles に記載されているように
私はこの問題の私自身の変化を考え出しました。
問題は、プロトコルをhttpsからsslに変更することではなく、Githubのグローバルユーザー名と電子メールアドレスを設定することでした。 (私はプライベートリポジトリにプッシュしようとしていました。
git config --global user.email "[email protected]"
git config --global user.name "Your full name"
Githubには、このエラーのトラブルシューティング専用のページがあります。
https://help.github.com/articles/https-cloning-errors
私の場合、gitの新しいバージョン(1.8.5.2)を使うことでこの問題を解決できたことがわかりました。
私の同僚が誤ってこのリポジトリの分岐元であるリポジトリを無効にしたために、これが起こりました。元のgit(ハブ)リポジトリが実際にまだ存在していることを確認するためだけにチェックするかもしれません。
ssh
の代わりにhttps
を使ってクローンを作成することで、この問題は解決しました。
それは会計の問題かもしれません。上流(個人)レポ所有者のGithubアカウントは金銭的なものではないかもしれません。クライアントのクレジットカードの有効期限が切れるところを見ました。
Gitboxアプリ内でhttpsを http に変更した後、私にとってはうまくいった。
私にとってうまくいったのは、httpからsshへの変更です。
git remote rm Origin
git remote add Origin [email protected]:username/repoName.git
それからgit remote -v
でそれをチェックしてください
私を助けた唯一のものは、別の質問に対するこの答えです。
Gitの有名な「エラー:.gitへの許可がユーザーに拒否されました」 /
要約すると、あなたがWindowsを使っているのと同じであれば、 "Credential manager"を検索して開きます。そこに、あなたはあなたのGit信任状を見つけることができます。ユーザー名を変更します(これは他のものに変更したはずです)。
また、[コントロールパネル] - [ユーザーアカウント] - [資格情報マネージャ]の下にもあります。
私の場合、リポジトリに権限がないためにエラーが発生しました。
同じ種類のエラーが発生しました。 403にアクセスできない。私の場合、これらの答えはどれもうまくいかなかった。だから私は以下を試してみました、それはうまくいった。
コードは正常にプッシュされました
!マックOS!
設定に問題がないこともありますし、githubサーバーに問題があることもあります。
https://status.github.com - githubの現在のステータス:)
私は今この問題を抱えていました、そしてそれは私のサーバーの/etc/resolver.confファイルが間違ったIPアドレスを持っていることが判明しました。他人を助けるかもしれません。
私の場合、githubでの email IDがまだ確認されていないため、上記のエラーが発生していました 。 GitHubは未確認の電子メールについてこの警告を出していました。
電子メールを確認してからプッシュするとうまくいきました。
私は同じ問題を抱えていました。私の場合は、githubで作成する前にローカルでgit repoを初期化してから、リモートブランチを追加しようとしました。私はアクションの順番を変えることで私の問題を解決しました。しかし、私のようにコマンドラインからすべてを実行したいのは、そうではありません。
私は以前に別のgithubユーザーとしてサインインしました(たとえばuser1)。私の実際のgithubアカウント(例えばuser2)では、新しく作成したリポジトリをgithubに複製することはできましたが、変更をプッシュすることはできませんでした。
Windows資格情報マネージャから資格情報を削除するなど、上記のすべての回答を試しましたが、うまくいきませんでした。
最後にうまくいったのは、github Windows Appを立ち上げることでした。 [設定] - > [オプション]に移動し、ログインしているユーザーがuser1であることを確認します。そのユーザーからログアウトをクリックし、この場合user2として必要なユーザーとしてログインします。
プッシュエラー時にこのような403を解決するには、.gitディレクトリの設定ファイルに入って、次の行を変更する必要があります。
precomposeunicode = true
[remote "Origin"]
http://[email protected]:abc/xyz.git
行をこれに変更
precomposeunicode = true
[remote "Origin"]
ssh://[email protected]/abc/xyz.git
これで私の問題は解決しました。
HTTPではなくSSHキーを使ってOriginを作成してください。
SSHキーの使用を開始できる場合は、URLは次のように始まります。
[email protected]:<YOUR REPO URL>
今、あなたはあなたの対応するブランチに追加、コミット、プッシュすることができます
解決策のどれもあなたのために働かなかったら、すぐにこの答えを読んでください[あなたのケースかもしれません]:
私のような、これらすべての[すばらしい]答えを試したが、それでもまだコミットをプッシュするのに苦労している人のために、プッシュが失敗する理由がもう1つあります。
Gitリポジトリ(GitHub、BitBucketなど)がすべて問題ないか確認してください。私の場合、私の問題が何であるかを理解するために多くの時間を費やした後(PyCharmの新版のせいでさえ!:)レポと私は新しいコミットをプッシュすることができなかった理由です。そして、それはまさにあなたに同じエラーを得る原因となります(403:URLにアクセスできない)。
これらのコマンドを実行してからリポジトリにプッシュするための十分な権限があることを確認してください
git config --global user.email youremail@domain.
git config --global user.name username
git config --global user.password yourpassword
これが誰かを助けることを願って
ユーザーに書き込み権限を与えます。
アクセスを提供した後。一度コードを引っ張り、次にそれを押してください。
もう1つ考えられる理由は、あなたが彼らの計画限度を超えたかもしれないということです。
この問題を解決してリポジトリへの書き込みアクセス権を回復するには、アカウントプランをアップグレードするか、一部の共同編集者を削除する必要があります。
私はbitbucketで同じ問題を抱えていました、しかし、私は5分待って、そして次に私は再試行しました、そしてそれはうまくいっていました。プロバイダに問題がある可能性があります。
その他の理由でgithub.com上の電子メールの検証かもしれません
Github.comにログインしてメッセージがないか確認して、Eメールアドレスを確認してください。必要に応じて確認してください。
BitBucketを使用している場合、アカウントは以下の理由で読み取り専用モードになる可能性があります。
- ストレージセグメントをアップグレードしているため、新しいデータを受け取ることができません。
- 新しい書き込みを必要としない変更をロールアウトしています。
- リポジトリの所有者は、より多くのユーザーを受け入れるためにアカウントをアップグレードする必要があります。
https://confluence.atlassian.com/display/BITBUCKET/Repositories+in+Read-Only+Mode
リポジトリディレクトリの下の.git/configファイルを編集します。
[remote "Origin"]セクションの下のurl =エントリを探します
Url = https://github.com/rootux/ms-Dropdown.git から https://[email protected]/rootux/ms-Dropdown.git に変更します。
uSERNAMEはgithubのユーザー名です。
=>この解決策は私のために働きました。
私はこれを教えてこの同じエラーで同じ問題を抱えていた
remote:user/repo.gitへの権限がuser2に拒否されました。
これに関する問題は、WindowsとMacでは、Githubへのキーパスをキャッシュに保存することです。
Macでこれを修正するには、これを実行するだけです。
git credential-osxkeychain erase
何もコンソールにプロンプトを出しません。
それから、通常のプッシュをするだけで、Githubからユーザー名とパスワードをもう一度入力できるようになります。
git commit -m "First Commit"
ウィンドウを使用する場合は、上記の答えを参照してください。