GitHubで自分のリポジトリにPushしようとしたところ、「git-receive-pack not permitted」というエラーが発生した。(Eclipseからやってます)
![](http://glasses-se-note.com/wp/wp-content/uploads/2021/08/image-3-1024x273.png)
とある記事では、「Gitのパスワードが間違っているので、Eclipseのセキュアストレージを一旦削除する」というのがあったが、これでも解決せず。
散々探した結果、GitHubの公式ブログに見つけました!なんと、2020/12/15の記事で「Token authentication requirements for Git operations」がありました。
https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/
つまり、Gitの操作にはトークン認証が必須になるよという意味でした。実際、トークンを作成してPushしたところ問題なく操作できました。
私の場合は、Cloneするときには、Githubのアカウントとパスワードをセットしていたため、同じ認証情報がPushの時にも使われてエラーになったました。
トークンの作成方法
① GitHubにログインして、アイコン > Settingsを開く。
![](http://glasses-se-note.com/wp/wp-content/uploads/2021/08/image-4-416x1024.png)
②画面下部の方にある、Developer Settingsを開く。
![](http://glasses-se-note.com/wp/wp-content/uploads/2021/08/image-5.png)
③Personal access tokenを開く。
![](http://glasses-se-note.com/wp/wp-content/uploads/2021/08/image-6.png)
④Generate new tokenを開く。
![](http://glasses-se-note.com/wp/wp-content/uploads/2021/08/image-7-1024x60.png)
④トークンの名前と有効期限をセットする。
![](http://glasses-se-note.com/wp/wp-content/uploads/2021/08/image-8-1024x364.png)
⑤アクセスを許可するスコープをセットして、画面下部のGenerate Tokenを押下する。
![](http://glasses-se-note.com/wp/wp-content/uploads/2021/08/image-9-1024x535.png)
⑥そうすると、トークンが作成された画面上に表示されるためメモしておく(このタイミングでしか見れない)
⑦アクセストークンをパスワードにセットして使う。↓例
1 2 3 |
$ git clone https://github.com/username/repo.git Username: your_username Password: your_token |
なお、英語でよければTokenの作成方法について公式の記事があります。
https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token
Eclipseの認証情報のクリア方法
私のようにEclipseで認証情報を保存してしまった場合は、以下の方法でクリアできます。
設定 > 一般 > セキュリティー > セキュア・ストレージ > 内容 > [デフォルト・セキュア・ストレージ] > GIT > http・・・・(以下画面参照)
に移動して削除を押下します。
![](http://glasses-se-note.com/wp/wp-content/uploads/2021/08/image-10-1024x773.png)
すると再起動を求められるので再起動します。再度Pushするときに認証情報を求められるので、その時にパスワードにTokenを使いましょう。
古いバージョンのEclipseであれば、以下の記事が役に立つかもです。
https://hacknote.jp/archives/6690/
いやー、自分が使っているサービスの公式ブログはたまに読んでおかないとだめだ。(;´д`)