一连舍、目標(biāo)
本博文中g(shù)it操作的目標(biāo)為建立本地分支與遠(yuǎn)程分支的映射關(guān)系(或者為跟蹤關(guān)系track)策肝。這樣使用git pull或者git push時(shí)就不必每次都要指定從遠(yuǎn)程的哪個(gè)分支拉取合并和推送到遠(yuǎn)程的哪個(gè)分支了。
二、查看本地分支與遠(yuǎn)程分支的映射關(guān)系
使用以下命令(注意是雙v):
git branch -vv
可以獲得如下信息:
[圖片上傳中...(1.png-139207-1520316956730-0)]
可以看到分支addFile沒有和遠(yuǎn)程分支建立任何映射斩狱,此時(shí)若執(zhí)行如下拉取命令則不成功(因?yàn)間it此時(shí)不知道拉取哪個(gè)遠(yuǎn)程分支和本地分支合并):
image.png
同理,若此時(shí)執(zhí)行如下推送命令同樣不成功:
image.png
二扎瓶、建立本地分支與遠(yuǎn)程分支的映射關(guān)系
建立當(dāng)前分支與遠(yuǎn)程分支的映射關(guān)系:
git branch -u origin/addFile
或者使用命令:
git branch --set-upstream-to origin/addFile
得到結(jié)果如下:
image.png
查看當(dāng)前本地分支與遠(yuǎn)程分支的映射關(guān)系結(jié)果如下:
image.png
此時(shí)再次拉取所踊,成功信息如下:
image.png
再次推送,成功信息如下:
image.png
三栗弟、撤銷本地分支與遠(yuǎn)程分支的映射關(guān)系
撤銷本地分支與遠(yuǎn)程分支的映射關(guān)系
git branch --unset-upstream
使用git branch -vv得到結(jié)果如下:
image.png
可以看到本地分支與遠(yuǎn)程分支的映射關(guān)系已經(jīng)撤銷污筷。
四、問題思考:本地分支只能跟蹤遠(yuǎn)程的同名分支嗎乍赫?
答案是否定的瓣蛀,本地分支可以與遠(yuǎn)程不同名的分支建立映射關(guān)系,實(shí)驗(yàn)時(shí)分支結(jié)構(gòu)如下:
image.png
可以使本地分支addFile和遠(yuǎn)程分支editFile建立映射關(guān)系:
image.png
并且此時(shí)可以把本地分支addFile提交到遠(yuǎn)程分支editFile分支中去:
image.png