操作基础:Git本地分支与远程分支的追踪关系
扫描二维码
随时随地手机看文章
序言
测试环境:ubantu14、window10
读本文需要用到的操作基础
注:以下操作命令主要与分支有关。且认为本地master为当前分支,dev为要新建的分支。
从当前分支切换到‘dev’分支: git checkout dev 建立并切换新分支: git checkout -b 'dev' 查看当前详细分支信息(可看到当前分支与对应的远程追踪分支): git branch -vv 查看当前远程仓库信息 git remote -vv
Git本地分支与远程分支的追踪关系
我们可以通过git branch -vv
查看分支与远程分支追踪状态,要修改追踪关系接下来会讲。
一般我们Git提交都不会直接提交主分支master,先提交到dev分支,没问题,再会合并到master分支。接下来会讲。
追踪关系主要就是说,我当前本地分支会对应一个远程分支,我的任何操作(eg. push、pull操作)都只会在这个关系上发生。如果我们想当前本地分支与远程的其他分支发生关系呢?接下来会讲。
Git push
git push origin [本地分支名]:[远程分支名]
如果直接写git push,是push当前分支到当前分支的追踪关系分支。
一般本地master分支,push到的是远程仓库的master分支。
我们可以修改其分支的追踪关系。
注:接下来操作中,是修改本地‘master’分支的追踪分支操作,原先对应远程分支是master,我们要修改为远程dev分支。
步骤:
① 进入当前项目根目录的’.git’文件夹(请自行设置显示隐藏文件)。打开config文件(注意不要用window记事本打开)。② [remote "origin"]
这一项是修改对应远程Git仓库地址。③ [branch "master"]
这一项是修改本地分支‘master’的远程追踪关系分支,直接修改merge = refs/heads/master
为merge = refs/heads/dev
④ 再次通过命令行查看状态就可以发现你的远程分支已经改掉。⑤ 可能出现的问题补充:
没有[branch "master"]
这一项怎么办?
如果是新项目,没有git pull或git clone,就不会与远程分支建立关系,或者也可以自己添加这一项,但不建议。
[注:欢迎大佬驾临指出错误]