git checkout的分支没有与远程分支关联
今天改一个问题,需要拉取远程的一个分支,然后拉下来了,但是提交的时候发现我的本地分支并没有跟远程的分支关联,这就很迷惑了,查了一下后,发现我在checkout分支的时候没有track远程分支,而且分支名称多加了一个origin,也就是origin/branchname,这样命名的一个问题就是在与远端分支关联的时候会报出一个错误
warning: refname ‘origin/v2.1.20200724.spd-poc’ is ambiguous.
fatal: Ambiguous object name: ‘origin/v2.1.20200724.spd-poc’
因此需要重新对本地分支命名(这里我是在idea中直接重命名的,没有用命令),然后再关联
git branch --set-upstream-to=origin/<remote branch_name> <local branch_name>
//或者
git branch -u origin/branch_name
注意,如果想在checkout的时候就与远程分支关联需要使用
git checkout --track origin/branch_name
//或者
git checkout -b test origin/test
解决问题的过程中了解到的几个命令
//查看本地分支
git branch
//查看远端分支
git branch -r
//查看所有分支(红色表示远端分支)
git branch -a
//查看所有分支映射(两个v)
git branch -vv
//删除分支
git branch -d branch_name
//删除远程分支
git push origin --delete branch_name