2012-02-05 17 views
82

私はGitHubのレポからフォークしました。別のユーザーのフォーク上のブランチからコードを取得したい。GitHub上の他の誰かのフォークにブランチをフェッチするにはどうすればいいですか?

このユーザーのリポジトリ全体を別のローカルリポジトリにコピーする必要がありますか?git checkout link_to_the_other_users_branchのようなものを行うことはできますか?

+1

あなたはgitの "リモコン" を探しています:http://progit.org/book/ch2-を5.html – millimoose

答えて

146
$ git remote add theirusername [email protected]:theirusername/reponame.git 
$ git fetch theirusername 
$ git checkout -b mynamefortheirbranch theirusername/theirbranch 

リモートに最初の手順で追加するときに複数の「正しい」URIがあることに注意してください。

  • [email protected]:theirusername/reponame.git
  • https://github.com/theirusername/reponame.git SSHベースのURI
  • であるHTTPは、あなたが使用することを好むどちら

URIであるあなたの状況に依存します:GitHubには、違いを説明するヘルプ記事を持って、あなたを支援選択:Which remote URL should I use?

+0

最後の行は何をしていますか? –

+2

最後の行は 'mynamefortheirbranch'という新しいブランチをチェックし、そのスタートポイントは' theirusername/theirbranch'の頭に設定されています。 –

+2

私は*致命的になる:パスを更新し、ブランチ 'xyz'に同時に切り替えることができません。コミットとして解決できない 'xyz/xyz'をチェックアウトするつもりでしたか?* –

11

amalloy's suggestion私のために働いていません。これはやった:

git remote add theirusername https://github.com/theirusernam/reponame 
git fetch theirusername 
git checkout -b mynamefortheirbranch theirusername/theirbranch 

資源:

+0

私はあなたの最初の行の最後に '.git'がありませんと信じています。 – TomNorway

+0

@TomNorway本当ですか?このようにあなたのために働かないのですか? –

+0

@TomNorway私はそれをテストし、 '.git'拡張子なしで動作します。あなたはGitHubを使いますか? –