リモートブランチを別の名前のローカルリポジトリにプルしますか?


112

さて、これについて少し調べましたが、正確な答えを見つけることができなかったので、尋ねる必要があります。

2つのリモートがあります:originとrepo2です。

次のようなことをしたい

git pull repo2 master

しかし、これはrepo2のマスターブランチを私のマスターにプルします。ローカルブランチに対して、プルインする別のブランチを指定できますか?

回答:


163
git checkout -b myBranchName repo2/master

20
注- git fetch remote2まだ実行していない場合は、事前に実行しておく必要が あります。それ以外の場合、>致命的:パスを更新できず、同時にブランチ 'myBranchName'に切り替えることができません。
dman

注-プッシュバックする必要がある場合git push repo2 myBranchName:master、単純なものとしての使用git pushは失敗します
jaimedash

2
ブランチがすでに存在している場合はどうなりますか?そこでrepoのコードでコードを更新したいと思います。
Jared

@Jared技術的には別の質問ですが、簡単に可能です(実際、これは最も一般的なユースケースの1つです)。それはあなたがすでに何をしたかに少し依存します。ほとんどの場合、それは正しいですgit checkout my_branch && git pull --rebase--rebaseワークフローによって異なります)。ブランチがまだリモートブランチを追跡していない場合は、1 git branch --set-upstream my_branch upstream/my_branch回実行する必要があります。
KingCrunch 2017年

4

git pullコマンドはない便利な機能であるgit fetchgit merge。新しいリモートからブランチを取得するだけで、作業コピーのブランチにマージしない場合は、を使用できますgit fetch。次に、git branch -avすべてのローカルブランチとリモートブランチを参照して、どちらのリモートでも好きなように操作できます。

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