現(xiàn)在有一個(gè)需求蒜鸡,將已經(jīng)開(kāi)發(fā)完的代碼要回到之前的一個(gè)tag處進(jìn)行修改bug,修改完以后打一個(gè)tag然后回到之前的分支犀填,將check出的那個(gè)分支代碼合并到當(dāng)前分支上讥蔽,刪除新建的那個(gè)分支奇徒。這里面的重點(diǎn)是合并的時(shí)候要把沖突解決掉,然后提交遠(yuǎn)程git庫(kù)巍膘,然后需要驗(yàn)證如果合并完以后刪除check出來(lái)的那個(gè)分支,會(huì)不會(huì)影響合并后的分支回到ag處受影響芋簿。下面是步驟:
第一步:將tag處代碼check到一個(gè)新的分支上
git checkout -b branch_name tag_name
第二步:在新的分支上修改bug峡懈,并提交
第三步:修改完以后,打一個(gè)tag与斤,并且提交遠(yuǎn)程
git tag <tagName> //創(chuàng)建本地tag
git push origin <tagName> //推送到遠(yuǎn)程倉(cāng)庫(kù)
若存在很多未推送的本地標(biāo)簽肪康,你想一次全部推送的話:
git push origin --tags
第四步:回到之前的分支,與新分支上的代碼進(jìn)行合并
git checkout old_branch //回到之前的分支
git merge new_branch //合并新分支
第五步:再合并的時(shí)候幽告,如果兩個(gè)人修改了同一個(gè)文件梅鹦,需要先解決沖突,然后再提交冗锁,并且上傳遠(yuǎn)程git庫(kù)
第六步:切換到第三部中新打的tag處查看代碼是否正確
第七步:刪除check出的那個(gè)分支
git branch -d new_branch //刪除本地check出來(lái)的新分支
git push origin --delete new_branch //刪除遠(yuǎn)程的新分支
注:這里如果合并完成。那么刪掉check出的那個(gè)分支嗤栓,不影響合并后的分支check到指定tag處,可以放心刪除多余的分支