#前提
GitHubアカウントを2つ持っており、
アカウント1(前アカウント)からアカウント2(現アカウント)に切り替えて作業しているという状況です。
#エラー概要
% git push origin feature/ブランチ名
ローカルブランチをGitHubに公開しようとしたら、下記エラーが発生しました。
remote: Permission to アカウント2/リポジトリ名.git denied to アカウント1.
fatal: unable to access 'https://github.com/アカウント2/リポジトリ名.git/': The requested URL returned error: 403
訳:
アカウント1 に アカウント2/リポジトリ名.git への許可が拒否されました。
fatal: 'https://github.com/アカウント2/リポジトリ名.git/' にアクセスできません。要求された URL はエラーを返しました。403
#解決した方法
結論: Collaboratorsとしてアカウント1のユーザーを追加すればOKです。
Collaboratorsにはpush権限が付与されます。
方法:下記記事を参考してください。
GitHubで特定のリポジトリを複数人で共有する方法
#補足説明
ユーザーアカウントリポジトリのアクセス許可レベル
ユーザーアカウントが所有するリポジトリには、リポジトリの所有者と共同編集者の2つの権限レベルがあります。
ユーザーアカウントが所有するリポジトリには、1人の所有者がいます。所有権のアクセス許可を別のユーザーアカウントと共有することはできません。
個人リポジトリの共同作業者は、リポジトリのコンテンツをプル(読み取り)し、変更をリポジトリにプッシュ(書き込み)できます。
ざっくり推測
GitHubアカウントにはアクセス権限、「ここまでならしていいよ」という範囲がユーザーの立場ごとに決まっていて、その範囲を広げたことで解決したというのが一連の流れの概要。
つまり
今回だったらアカウント2へのアクセス許可を持っている人はアカウント1になっていた。
ことになるので、「権限の変更」が正しい解決方法かもしれません。
詳しい方がいらっしゃいましたら、ご指摘いただけますと幸いです。
参照:GitHub Docs