Webエンジニアのメモ帳

技術的な話を中心に書いています。

【Git】git push origin masterできない場合の対処法

業務などでは基本的にあり得ませんが、リモートのmasterへのpushは許可しているとします。

そこで以下のコマンドを実行したところ

git push origin master

以下のエラーになりました。

remote: Permission to (gitHubのユーザー名)/(リポジトリ名).git denied to (PCのユーザー名).
fatal: unable to access 'https://github.com/(gitHubのユーザー名)/(リポジトリ名)/': The requested URL returned error: 403

この記事では、解決のために行った作業を書いています。

解決法1

リモートリポジトリのURLにgitHubのユーザー名を明記しました。

git remote set-url origin https://(gitHubのユーザー名)@github.com/(gitHubのユーザー名)/(リポジトリ名).git
# もとはhttps://github.com/(gitHubのユーザー名)/(リポジトリ名).git のみで、@の前の部分を追加した形

このコマンドを実行し、再びpushしようとすると、今度はうまくpushすることができました。

解決法2

上記のやり方だとmasterにしかpushできず、たとえばbranchを切ってpushということができませんでした。

そこで、以下のコマンドを実行してから

git config user.name (gitHubのユーザー名)

/usr/local/git/etc/gitconfigの最終行にあった

helper = osxkeychain

コメントアウトしました。

これで、無事pushできるようになりました。