溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

Git本地分支的操作有哪些

發(fā)布時(shí)間:2022-03-16 09:12:46 來(lái)源:億速云 閱讀:237 作者:iii 欄目:軟件技術(shù)

本文小編為大家詳細(xì)介紹“Git本地分支的操作有哪些”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“Git本地分支的操作有哪些”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來(lái)學(xué)習(xí)新知識(shí)吧。

一.Git分支的作用

在進(jìn)行多人協(xié)作開(kāi)發(fā)的時(shí)候,為了防止互相干擾,提高協(xié)同開(kāi)發(fā)的體驗(yàn),建議每個(gè)開(kāi)發(fā)者都基于分支進(jìn)行項(xiàng)目功能的開(kāi)發(fā)。

二:master主分支

在初始化本地Git倉(cāng)庫(kù)的時(shí)候,Git默認(rèn)已經(jīng)幫我們創(chuàng)建了一個(gè)名字叫做master的分支。通常我們把這個(gè)master分支叫做主分支。

在實(shí)際工作中,master主分支的作用是:用來(lái)保存和記錄整個(gè)項(xiàng)目已完成的功能代碼。
因此,不允許程序員直接在master分支上修改代碼,因?yàn)檫@樣做的風(fēng)險(xiǎn)太高,容易導(dǎo)致整個(gè)項(xiàng)目崩潰,因此我們需要在自己負(fù)責(zé)開(kāi)發(fā)的分支上進(jìn)行開(kāi)發(fā)

三.功能分支

由于程序員不能直接在master分支上進(jìn)行功能的開(kāi)發(fā),所以就有了功能分支的概念。
功能分支指的是專(zhuān)門(mén)用來(lái)開(kāi)發(fā)新功能的分支,它是臨時(shí)從master主分支上分叉出來(lái)的,當(dāng)新功能開(kāi)發(fā)且測(cè)試完畢后,最終需要合并到master主分支上,如圖所示:

四.本地分支操作

1.查看分支列表

使用如下的命令,可以查看當(dāng)前Git倉(cāng)庫(kù)中所有的分支列表:

git branch

注意:分支前面的*表示當(dāng)前所處的分支

2.創(chuàng)建新分支

使用如下的命令,可以基于當(dāng)前分支,創(chuàng)建一個(gè)新的分支,此時(shí),新分支中的代碼和當(dāng)前分支完全一樣:(所以開(kāi)發(fā)時(shí)我們需要在主分支上創(chuàng)建新分支

git branch 分支名稱(chēng)

3.切換分支

使用如下的命令,可以切換到指定的分支上進(jìn)行開(kāi)發(fā):

git checkout 分支名稱(chēng)

4.分支的快速創(chuàng)建與切換

使用如下的命令,可以創(chuàng)建指定名稱(chēng)的新分支,并立即切換到新分支上:

1 #-b表示創(chuàng)建一個(gè)新分支
2 # checkout表示切換到剛才新建的分支上
3 git checkout -b 分支名稱(chēng)

5.合并分子

功能分支的代碼開(kāi)發(fā)測(cè)試完畢之后,可以使用如下的命令,將完成后的代碼合并到 master主分支上:

1 切換到master分支
2 git checkout master
3在 master 分支上運(yùn)行 git merge 命令,將要合并分支的代碼合并到 master分支
4 git merge 分支名稱(chēng)

6.刪除分支

當(dāng)把功能分支的代碼合并到master主分支上以后,就可以使用如下的命令,刪除對(duì)應(yīng)的功能分支:

git branch -d 分支名稱(chēng)

7.遇到?jīng)_突時(shí)的分支合并

如果在兩個(gè)不同的分支中,對(duì)同一個(gè)文件進(jìn)行了不同的修改,Git就沒(méi)法干凈的合并它們。此時(shí),我們需要打開(kāi)這些包含沖突的文件然后手動(dòng)解決沖突。

1#假設(shè):在把reg分支合并到 master分支期間,代碼發(fā)生了沖突
2 git checkout master
3 git merge reg

打開(kāi)沖突的文件手動(dòng)解決(也可以使用vs code的輔助解決(紅色圈里面))

解決后重新提交和合并

#打開(kāi)包含沖突的文件,手動(dòng)解決沖突之后,再執(zhí)行如下的命令
 git add .
 git commit -m“解決了分支合并沖突的問(wèn)題"
 git merge 分支名稱(chēng)

8.將本地分支推送到遠(yuǎn)程倉(cāng)庫(kù)

如果是第一次將本地分支推送到遠(yuǎn)程倉(cāng)庫(kù),需要運(yùn)行如下的命令:

1#-u表示把本地分支和遠(yuǎn)程分支進(jìn)行關(guān)聯(lián),只在第一次推送的時(shí)候需要帶-u參數(shù)
2 git push -u 遠(yuǎn)程倉(cāng)庫(kù)的別名 本地分支名稱(chēng):遠(yuǎn)程分支名稱(chēng)
3
4#實(shí)際案例:
5 git push -u origin payment: pay
6
7#如果希望遠(yuǎn)程分支的名稱(chēng)和本地分支名稱(chēng)保持一致,可以對(duì)命令進(jìn)行簡(jiǎn)化:
8 git push -u origin payment

如果不是第一次將本地分支推送到遠(yuǎn)程倉(cāng)庫(kù),需要運(yùn)行如下的命令:

則切換到要推送的分支后直接git push 就可以將本地分支推送到遠(yuǎn)程倉(cāng)庫(kù)

9.查看遠(yuǎn)程倉(cāng)庫(kù)的所有分支列表

git remote show 遠(yuǎn)程倉(cāng)庫(kù)名稱(chēng)

10.跟蹤分支

跟蹤分支指的是:從遠(yuǎn)程倉(cāng)庫(kù)中,把遠(yuǎn)程分支下載到本地倉(cāng)庫(kù)中。需要運(yùn)行的命令如下:

11.拉取遠(yuǎn)程分支的最新代碼

可以使用如下的命令,把遠(yuǎn)程分支最新的代碼下載到本地對(duì)應(yīng)的分支中:

1#從遠(yuǎn)程倉(cāng)庫(kù),拉取當(dāng)前分支最新的代碼,保持當(dāng)前分支的代碼和遠(yuǎn)程分支代碼一致
2 git pull

12.刪除遠(yuǎn)程分支

可以使用如下的命令,刪除遠(yuǎn)程倉(cāng)庫(kù)中指定的分支:

1 #刪除遠(yuǎn)程倉(cāng)庫(kù)中,指定名稱(chēng)的遠(yuǎn)程分支
2 git push 遠(yuǎn)程倉(cāng)庫(kù)名稱(chēng) --delete 遠(yuǎn)程分支名稱(chēng)
3 #示例:
4 git push origin --delete pay

讀到這里,這篇“Git本地分支的操作有哪些”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過(guò)才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

git
AI