在多人开发的项目中,多分支切换是经常遇到的问题。本篇文章解决两个问题:
1、本地仓库中存在分支,远程仓库没有此分支,怎样把本地分支推送到远端?
假设有本地分支dev_name,远端没有该分支。此时push或者pull时,就不知道跟踪的是哪个分支?使用以下指令:
git push --set-upstream origin dev_name
此时会在远端自动创建分支dev_name,并且会自动和本地分支关联。后续push和pull时,就不用指定分支。
2、本地没有某个分支,远程仓库有此分支,怎样拉取远端分支代码到本地分支?
假设同事在远端创建了分支branch_name,在你本地没有该分支。此时要拉取该分支怎么办?使用指令:
git checkout --track origin/branch_name
此时,本地会自动创建分支branch_name与远端分支同名,并与远端分支branch_name关联。不同名时使用指令:
git checkout -b new_branch_name branch_name
建议使用同名分支,这样便于交流沟通。