フォークされたリポジトリのGitマスターブランチをアップストリームブランチにリセットするにはどうすればよいですか? 質問する

フォークされたリポジトリのGitマスターブランチをアップストリームブランチにリセットするにはどうすればよいですか? 質問する

フォークした Git リポジトリのマスター ブランチを完全に台無しにしてしまいました。

アップストリーム マスター リポジトリの内容を使用して、フォークにプッシュされたマスター ブランチを完全にリセットしたいと考えています。マスター ブランチの変更や履歴を保持することには興味がありません。

最も簡単な方法は、フォークしたリポジトリを削除し、アップストリーム プロジェクトから再フォークすることです。ただし、他のプッシュされたブランチで作業しているため、失いたくないのです。

では、プッシュしたマスター ブランチをアップストリーム マスターにリセットするにはどうすればよいでしょうか?


git clone https://myrepo.git
cd myrepo
git remote add upstream https://upstream.git
git fetch upstream

ローカルおよびリモートのマスター ブランチをアップストリーム マスターにリセットするには、どうすればよいでしょうか?

ベストアンサー1

ローカルのマスター ブランチをアップストリーム バージョンにリセットし、それを origin リポジトリにプッシュできます。

「upstream」が元のリポジトリで、「origin」がフォークであると仮定します。

# ensures current branch is master
git checkout master

# pulls all new commits made to upstream/master
git pull upstream master

# this will delete all your local changes to master
git reset --hard upstream/master

# take care, this will delete all your changes on your forked master
git push origin master --force

(を使用して、元のリポジトリを「アップストリーム」として定義できますgit remote add upstream /url/to/original/repo。)

おすすめ記事