解决 【git checkout -b dev origin/dev】报错的问题
一、解决 【git checkout -b dev origin/dev】报错的问题
把远程库的 dev 分支拉倒本地的 dev 分支时使用指令:
$ git checkout -b dev origin/dev
说明:
- -b 表示本地创建 dev 分支并切换到 dev 分支上;
- origin/dev 表示远程库的 dev 分支。
报错信息
解决方法
$ git fetch origin dev // 命令来把远程分支拉到本地
$ git checkout -b dev origin/dev // 在本地创建分支dev并切换到该分支
$ git pull origin dev // 就可以把某个分支上的内容都拉取到本地了
键入命令后如下所示:
二、Git - checkout远程分支
拉取远程分支,并创建本地分支
1、正确checkout操作
git checkout -b dev(本地分支名) origin/dev(远程分支名)
atal: Cannot update paths and switch to branch ‘mq_bug_20180524’ at the same time.
Did you intend to checkout ‘origin/mq_bug_20180524’ which can not be resolved as commit?
然后我们执行命令:
git branch -a
里边并不包含远程都’origin/mq_bug_20180524分支。
远程仓库明明有’origin/mq_bug_20180524分支,可是为什么告诉没有呢?
原来这条命令并没有每一次都从远程更新仓库信息,这样子做是为了效率,我们可以手动更新一下:
git fetch origin
然后我们在git branch -a
发现了我们的远程分支,然后我们在做新建一个分支:
git checkout -b mq_bug_20180524 origin/mq_bug_20180524
2、错误checkout操作
远程分支交dev_1,当前分支是dev
git checkout -b dev_1
git pull origin dev_1
git push origin dev_1
结果会用dev分支将远程分支覆盖