リモートのgithubリポジトリからローカルのリポジトリに変更をマージする


118

少し前にgithubのリポジトリをフォークし、小さな変更を加えて、その変更をgithubフォークにプッシュしました。その後、元のリポジトリは変更されました。元のリポジトリの変更を私のフォークにマージしたいと思います。

私はgitとgithubの両方を初めて使用するので、そのための具体的なコマンドが必要です。


回答:


160
git remote add {name} {Public Clone URL}
git pull {name} master
git push

例:

git remote add bret git://github.com/bret/watir.git
git pull bret master
git push

9

元のリポジトリをリモートとして追加し、フォークをマージするだけです。次に、マージされたフォークをgithubにプッシュします。

githubの操作を簡単にするためのruby gemもあります。1つの呼び出しでアップストリームをマージできます...


1
私がgitとgithubに慣れていないことを追加するのを忘れており、それを行うには特定のコマンドが必要であることがわかりました。github-gemに感謝しますが、それは私にとってやり過ぎです。
ジェリコ・フィリピン

6
ここでは、コマンド/コードサンプルを使用する必要があります。言葉はスタックオーバーフローを助けません。
ホルム


7
git pull origin master

追加のマージコミットを作成するジョブを実行します。競合が発生せず、プッシュするすべてのコミットに対して(追加の「マージ」コミットを使用して)再結合を作成したくない場合rebaseは、より優先されます。Git Gui + gitkでそれを行うことができます。でGit Gui履歴を開いてリモートでフェッチし、フェッチgitk時に一時的なr_masterブランチを作成しremotes/origin/masterます。最後に、呼び出しgit rebase r_mastergit bash。これにより、コミットがリモート変更の上に配置されます。を押して削除する準備ができましたr_master

このコメントは、このフローにはショートカットがあることを示唆しています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.