GitHub 上の別のリポジトリ( と呼ぶことにします) のフォークmyrepo
( と呼ぶことにしますorirepo
) を作成しました。その後、 をクローンしましたorirepo
。
git clone https://github.com/original/orirepo.git
約20個のファイルを変更し、変更をステージングしてコミットしました
git add
git commit
しかし、私が押し込もうとすると
git push
次のエラーが発生しました:
remote: Permission to original/orirepo.git denied to mylogin.
fatal: unable to access 'https://github.com/original/orirepo.git/': The requested URL returned error: 403
間違いを犯したことはわかっています。 ではなく、自分のフォークをクローンするべきでしたorirepo
が、今では遅すぎます。 ではなく、origin/orirepo
書き込みアクセス権のない自分のフォークにプッシュするにはどうすればよいでしょうか?
ベストアンサー1
デフォルトでは、リポジトリをクローンすると
https://github.com/original/orirepo.git
、にある- 現在のブランチは と呼ばれ
master
、
それから
- 結果として得られるクローンのローカル設定には
origin
、クローンしたリポジトリの URL に関連付けられた というリモートが 1 つだけリストされます。 - クローンのローカル
master
ブランチは追跡origin/master
。
したがって、クローンの設定を変更しない場合、Gitは
git push
として
git push origin master:origin/master
つまり、 は、ローカルブランチをリモートリポジトリ (クローンでは として知られています) にあるブランチにgit push
プッシュしようとします。ただし、そのリモート リポジトリへの書き込みアクセス権がないため、これを行うことはできません。master
master
origin
必要がある
origin
フォークに関連付けられたリモートを再定義するには、次のコマンドを実行します。git remote set-url origin https://github.com/RemiB/myrepo.git
または、リモートの元の定義を保持する場合は、フォークに関連付けられた
origin
新しいリモート (ここでは ) を定義します。myrepo
git remote add myrepo https://github.com/RemiB/myrepo.git
master
次に、次のコマンドを実行して、ローカルブランチをフォークにプッシュできるはずです。git push myrepo master
Gitに今からではなく、
git push
にプッシュするように指示したい場合は、以下を実行します。myrepo
origin
git push -u myrepo master
その代わり。