gitでforkしたrepoにoriginalのrepoをmergeする手順
公開日時: 2012-03-29 14:10
gitで本家のリポジトリからforkしたリポジトリに、本家の 更新をmergeする手順。
ここでは「matador」というnode.jsのモジュール(git://github.com/Obvious/matador.git)をforkし、forkした自前のリポジトリに対して、Obvious社の本家のリポジトリの更新をマージする例を用います。
まず、自分がforkしているリポジトリをcloneします。
cd ~/Desktop git clone git://github.com/foo/matador.git
次に、オリジナル(fork元)のリポジトリをremote branchとして追加します。
cd matador git remote add --track master ovbious git://github.com/Obvious/matador.git
上のmasterは、別のブランチでも構いませんが、多くの場合はmasterになると思います。また、master obviousの中のobviousも別の文字列(例えばhonke)でも構いませんが、ここではfork元の開発者であるobvious社の名前を入れています。
remote repositoryが追加されたことを確認します。
git remote 次のような出力があります。 obvious origin
ここで、fork元のリポジトリの変更をfetchします。
git fetch obvious
この結果、新しい
obvious/master
という名前のremote branchが作成されます。
新しいremote branchが追加されたことを確認します。
git branch -r 次のような出力があります。 obvious/master origin/HEAD -> origin/master origin/cli origin/master origin/two.dot.oh
これでfork元のリポジトリの変更をmergeする準備が整いました。
実際にmergeします。
git merge obvious/master
これでforkしたリポジトリに対して、オリジナルのリポジトリの変更をマージ完了です。