在實(shí)際的工作生活中,往往需要將本地的分支和遠(yuǎn)程分支關(guān)聯(lián),這樣我們就可以使用git pull命令來(lái)更新拉取最新的代碼,并使用git push命令將自己本地的修改推送到遠(yuǎn)程倉(cāng)庫(kù)。但是如果此時(shí)你本地關(guān)聯(lián)的遠(yuǎn)程分支被刪除了,那么就會(huì)出現(xiàn)你無(wú)法使用git pull,和git push命令。使用一個(gè)例子說(shuō)明這個(gè)場(chǎng)景。 我們可以使用下面的命令查看自己本地分支與與遠(yuǎn)程分支的關(guān)聯(lián)情況:
git branch -vv
如上圖所示,我們可以看到本地的master分支和遠(yuǎn)程的origin/master分支關(guān)聯(lián),nololibs_for_git 和遠(yuǎn)程的origin/nololibs_release 關(guān)聯(lián)。 這時(shí)候假設(shè)我們將遠(yuǎn)程分支origin/nololibs_release刪掉,這時(shí)候我們執(zhí)行g(shù)it pull命令就會(huì)報(bào)錯(cuò),如下所示:
意思就是我們之前關(guān)聯(lián)的遠(yuǎn)程分支不存在了。
要解決git pull報(bào)錯(cuò)的問(wèn)題就需要我們重新關(guān)聯(lián)一個(gè)遠(yuǎn)程倉(cāng)庫(kù)中存在的分支。這時(shí)候假設(shè)遠(yuǎn)程倉(cāng)庫(kù)中有 一個(gè)分支為origin/nololibs_for_git,我們只需要執(zhí)行下面的命令:
git branch -u 遠(yuǎn)程分支名 // 例如:git branch -u origin/nololibs_for_git
也可以使用下面的命令關(guān)聯(lián)遠(yuǎn)程分支:
git branch --set-upstream-to 遠(yuǎn)程分支名 //例如: git branch --set-upstream-to origin/nololibs_for_maven
執(zhí)行完上面的命令后,我們可以使用git branch -vv 查看下當(dāng)前的本地分支和遠(yuǎn)程分支的關(guān)聯(lián)情況:
我們可以發(fā)現(xiàn)本地分支nololibs_for_git和遠(yuǎn)程分支origin/nololibs_for_git以及關(guān)聯(lián)上了。
比如我們有時(shí)候會(huì)想將遠(yuǎn)程分支改個(gè)名字啥的,或者就是單純想解除與遠(yuǎn)程分支的關(guān)聯(lián),這時(shí)候可以使用下面的命令解除本地分支與遠(yuǎn)程分支的關(guān)聯(lián):
git branch --unset-upstream
例如:假設(shè)現(xiàn)在我想解除本地的nololibs_for_git和遠(yuǎn)程的origin/nololibs_for_git的關(guān)聯(lián)。 首先先用git branch -vv 命令看下分支的關(guān)聯(lián)情況:
可以發(fā)現(xiàn)本地的nololibs_for_git和遠(yuǎn)程的origin/nololibs_for_git是關(guān)聯(lián)著的,這時(shí)我們執(zhí)行命令git branch --unset-upstream,再使用git branch -vv命令查看分支關(guān)聯(lián)情況。
可以看到只有本地的分支了,遠(yuǎn)程的分支以及沒有了,這時(shí)候使用git pull命令會(huì)提示關(guān)聯(lián)遠(yuǎn)程分支
這時(shí)候我們?cè)賵?zhí)行關(guān)聯(lián)遠(yuǎn)程分支的命令git branch -u 遠(yuǎn)程分支名 就可以使用了。
審核編輯:湯梓紅
-
命令
+關(guān)注
關(guān)注
5文章
718瀏覽量
22619 -
Git
+關(guān)注
關(guān)注
0文章
203瀏覽量
16021 -
遠(yuǎn)程倉(cāng)庫(kù)
+關(guān)注
關(guān)注
0文章
3瀏覽量
2139
原文標(biāo)題:Git命令之本地分支與遠(yuǎn)程分支支關(guān)聯(lián)/解除關(guān)聯(lián)
文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
關(guān)于git的遠(yuǎn)程分支的詳細(xì)介紹

Git常用的超級(jí)實(shí)用命令

飛凌嵌入式ElfBoard ELF 1板卡-本地倉(cāng)庫(kù)管理之分支間的操作
嵌入式學(xué)習(xí)-飛凌嵌入式ElfBoard ELF 1板卡-本地倉(cāng)庫(kù)管理之分支間的操作
git shell 常用命令
Linux 下建立 Git 與 GitHub的連接并clone至本地
Git分支,為何以及如何使用分支
Git命令解析-merge、rebase

git拉取遠(yuǎn)程分支到本地的兩種方法
git rebase與相關(guān)git merge命令比較

git的命令和參數(shù)
git rebase和git merge的區(qū)別

Git中的最常用命令詳解

評(píng)論