GIT合并分支的三種實(shí)現(xiàn)方式

一、使用merge命令合并分支
1、目標(biāo):將dev分支合并到master分支
1.1、首先切換到master分支上
git checkout master
1.2、如果是多人開發(fā)的話 需要把遠(yuǎn)程master上的代碼pull下來
git pull origin master //如果是自己一個(gè)開發(fā)就沒有必要了,為了保險(xiǎn)期間還是pull
1.3、然后我們把dev分支的代碼合并到master上
git merge dev //如果有沖突,手動(dòng)解決沖突就行。
1.4、然后查看狀態(tài)及執(zhí)行提交命令
git status On branch master Your branch is ahead of 'origin/master' by 12 commits. (use "git push" to publish your >local commits) nothing to commit, working tree clean //上面的意思就是你有12個(gè)commit,需要push到遠(yuǎn)程master上 > 最后執(zhí)行下面提交命令 git push origin master
二、合并某個(gè)分支上的單個(gè)commit(cherry-pick命令)
比如 feature 分支上的commit 82ecb31非常重要,它含有一個(gè)bug的修改,或其他人想訪問的內(nèi)容。
無(wú)論什么原因,你現(xiàn)在只需要將82ecb31合并到master,而不合并feature上的其他commits;
所以我們用git cherry-pick命令來做:
git checkout master git cherry-pick 82ecb31
這樣就好啦。 現(xiàn)在82ecb31就被合并到master分支,并在master中添加了commit(作為一個(gè)新的commit)。
cherry-pick和merge比較類似,如果git不能合并代碼改動(dòng)(比如遇到合并沖突),git需要你自己來解決沖突并手動(dòng)添加commit。
這里git cherry-pick每次合并過來會(huì)顯示文件沖突(其實(shí)并沒有沖突代碼部分,只需手動(dòng)解決既可)。
三、使用開發(fā)工具 IDEA進(jìn)行分支代碼合并
1、開發(fā)代碼在master分支
現(xiàn)在要將代碼合到branch_cmb71分支

2、首先
在idea左下角切換分支到branch_cmb71分支
3、點(diǎn)擊右下角的Git:branch_cmb71
找到Local Branches,鼠標(biāo)左鍵選中master分支,在彈出的框中,選擇compare with Current

4、選擇左上角的file
選擇要合并的文件,右鍵點(diǎn)擊get from branch


5、這樣就把代碼合并到branch_cmb71分支的本地倉(cāng)庫(kù)了
然后再進(jìn)行commit,push操作就把代碼提交到branch_cmb71分支的遠(yuǎn)程倉(cāng)庫(kù)了
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
使用let's?encrypt申請(qǐng)免費(fèi)的SSL證書
這篇文章主要為大家介紹了如何使用let's?encrypt申請(qǐng)免費(fèi)的SSL證書示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-05-05
分享下程序員/設(shè)計(jì)師能用上的 75 份速查表
速查表可能是圖片,也可能是 PDF 文件,希望你能在這個(gè)列表中找到你所需要的,2014-07-07
如何使用?Merklized?抽象語(yǔ)法樹壓縮智能合約
Merklized?抽象語(yǔ)法樹?MAST(又名?Merklized?替代腳本樹)是一種使用?Merkle?樹壓縮比特幣智能合約的技術(shù),這篇文章主要介紹了使用?Merklized?抽象語(yǔ)法樹壓縮智能合約,需要的朋友可以參考下2023-12-12

