GitHub でフォークしたリポジトリを最新の状態に更新する方法
はじめに
GitHub でオリジナルのリポジトリからフォークしたリポジトリを管理していると、オリジナルのリポジトリで更新があった場合、自分のリポジトリにその変更を反映したくなることがあります。この記事では、フォークしたリポジトリを最新の状態に更新する方法を解説します。
手順
- ターミナルを開き、フォークしたリポジトリのディレクトリに移動します。
cd /path/to/your/forked/repository
- リモートリポジトリの一覧を確認します。
git remote -v
通常、origin
というリモート名でフォークしたリポジトリが登録されています。
- オリジナルのリポジトリをリモートリポジトリとして追加します。慣例として、
upstream
という名前を使用します。
git remote add upstream https://github.com/original/repository.git
- オリジナルのリポジトリから最新の変更を取得します。
git fetch upstream
- 現在のブランチ(通常は
main
またはmaster
)に切り替えます。
git checkout main
- オリジナルのリポジトリの変更を自分のリポジトリにマージします。
git merge upstream/main
- マージした変更をフォークしたリポジトリにプッシュします。
git push origin main
以上の手順で、フォークしたリポジトリがオリジナルのリポジトリと同期され、最新の状態になります。
注意点
- オリジナルのリポジトリで大幅な変更があった場合、マージ時にコンフリクトが発生することがあります。その場合は、コンフリクトを解消してからマージを完了させる必要があります。
- フォークしたリポジトリで独自の変更を加えている場合、オリジナルのリポジトリの変更を取り込むと、それらの変更が上書きされる可能性があります。必要に応じて、別のブランチで作業するなどの対応が必要です。
まとめ
GitHub でフォークしたリポジトリを最新の状態に更新するには、オリジナルのリポジトリをリモートリポジトリとして追加し、変更を取得してマージする必要があります。この手順を踏むことで、オリジナルのリポジトリで加えられた更新を自分のリポジトリに反映させることができます。