Github API トークンを使用してリポジトリに書き込む際に問題が発生しています。これはおそらく、達成しようとしていることが不可能なためです。実行できない場合は、次のことを実行できない理由を説明してください。
私たちが望むものは単純であると考えられるため、Web アプリケーション フローは避けたいと考えています。理想的には、次のように API トークンを使用したいと考えています。
このガイドに従ってください: https://github.com/blog/1270-easier-builds-and-deployments-using-git-over-https-and-oauth 「Git で OAuth を使用する」の一番下までスクロールすると、様子を見よう:
トークンがディスクに書き込まれないようにするには、クローンを作成しないでください。代わりに、プッシュ/プル操作で完全な git URL を使用してください。
ドキュメントに記載されているように、プッシュ/プル操作を実行したいと考えています。プル操作の例は次のとおりです。
mkdir foo
cd foo
git init
git pull https://<token>@github.com/username/bar.git
次に、プッシュ操作を実行します (つまり、ドキュメントが示すように、以下のようなものです)。
git add file
git commit file -m "Changed file"
git push https://<token>@github.com/username/bar.git master
私たちが直面している問題は、プッシュ段階にあります。プッシュ操作の実行に行き詰まっています。受け取るエラーは次のとおりです。
致命的: 認証に失敗しました
何が欠けていますか?私たちが望むのは、サービス アカウントが上で提供したドキュメントを介してプッシュ/プル操作を実行することだけです。サービス アカウントが (読み取り/書き込みアクセスで) 組織に追加されました。
言及する価値のあるポイント:
- 私たちの API トークンには「scope: repo」アクセス権があります。
- この例は、Github Enterprise アカウントからのものです。