国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

IDEA Git Stash 使用詳解

瀏覽:3日期:2024-08-06 17:30:34

隨著公司開發(fā)人員的增加,以及多需求的并行開發(fā),功能上線就會(huì)礙手礙腳;害怕自己沒寫完的代碼被別人部署到線上,害怕別人代碼沒寫完被自己部署到線上;總之功能上線之前還要和所有開發(fā)溝通,能不能部署代碼?如果只是幾個(gè)人的團(tuán)隊(duì)倒也無(wú)妨,但是開發(fā)人員多了,溝通成本就很高了。于是 Git 的分支就發(fā)揮它的作用了,本文講解工作中使用 IDEA 進(jìn)行分支的管理以及合并,以及其他 Git 使用技巧。

環(huán)境準(zhǔn)備

為了演示,先用 IDEA 創(chuàng)建一個(gè)簡(jiǎn)單工程,提交到 git 遠(yuǎn)程倉(cāng)庫(kù)當(dāng)中。

IDEA Git Stash 使用詳解

dev-100 分支創(chuàng)建

現(xiàn)在接到了一個(gè)編號(hào)為 100 的需求,我們?cè)?master 基礎(chǔ)上,創(chuàng)建 dev-100 分支

IDEA Git Stash 使用詳解

創(chuàng)建新分支 dev-100的同時(shí),并切換到 dev-100 分支。

IDEA Git Stash 使用詳解

dev-100 分支代碼開發(fā)

在 dev-100 分支編寫需求編號(hào)為 100 的 功能,代碼完成后進(jìn)行 commit 以及 push(如果這個(gè)分支只有你一個(gè)人在開發(fā)的話,就不用 push 到遠(yuǎn)程分支了,只需要 commit 即可

IDEA Git Stash 使用詳解

分支合并

現(xiàn)在我們要把 dev-100 分支上的代碼合并到 master 主分支上先切換到 master 分支

IDEA Git Stash 使用詳解

合并 dev-100 分支到 master 分支之前,建議先對(duì) master 代碼進(jìn)行 pull 更新操作,然后再執(zhí)行 Merge into Current

IDEA Git Stash 使用詳解

如果沒有沖突,dev-100 中的代碼就會(huì)被合并到 master 分支上了,合并成功后,需要 push 才能推送到遠(yuǎn)程倉(cāng)庫(kù)

IDEA Git Stash 使用詳解

取消分支合并

合并完成后,但是由于一些問題,我們想要取消本次合并,右鍵 git,選擇 Reset HEAD

IDEA Git Stash 使用詳解IDEA Git Stash 使用詳解

HEAD^ 是還原到上一個(gè)版本,HEAD^^ 是還原到上上一個(gè)版本。Reset Type 有三種:

mixed 默認(rèn)方式,只保留源碼,回退commit和index信息 soft 回退到某個(gè)版本,只回退了commit的信息,不會(huì)恢復(fù)到index file一級(jí)。如果還要提交,直接commit hard 徹底回退,本地源碼也會(huì)變成上一個(gè)版本內(nèi)容

一般使用默認(rèn)的 mixed 或者粗暴的 hard 方式。我們這里是取消合并,所以選擇 Hard 方式,并且是HEAD^還原到上一個(gè)版本,回退后恢復(fù)了原來(lái) master 的代碼。

IDEA Git Stash 使用詳解

解決合并沖突問題

接下來(lái)演示合并沖突,此時(shí)是在 master 分支,我們修改文件,并 commit 以及 push 到遠(yuǎn)程倉(cāng)庫(kù)。

IDEA Git Stash 使用詳解

此時(shí)再把 dev-100 分支合并到 master 分支就會(huì)提示沖突。

IDEA Git Stash 使用詳解

雙擊沖突文件,處理沖突。

IDEA Git Stash 使用詳解

處理完成后,點(diǎn)擊 apply 即可,如果有多個(gè)沖突文件,都按照這種方式處理,這是我們處理完沖突之后的代碼。

IDEA Git Stash 使用詳解

dev-100 分支已經(jīng)被成功合并到 master 了,就可以刪除了。可以直接刪除遠(yuǎn)程 dev-100 分支,刪除時(shí) IDEA 會(huì)提示是否同時(shí)刪除本地的 dev-100 分支,勾選即可。

現(xiàn)在我們把分支合并的結(jié)果 push 到遠(yuǎn)程倉(cāng)庫(kù)。

代碼暫存之git stash

編號(hào) 100 的需求完成之后,現(xiàn)在我們又接到一個(gè)新的需求,正在 dev-101 分支進(jìn)行開發(fā),開發(fā)還未完成。

IDEA Git Stash 使用詳解

突然線上出現(xiàn) bug,需要我們緊急進(jìn)行修改,于是我們要基于最新的 master 分支新建一個(gè) bug 分支 bug-12,需要先切換到 master 分支,但是當(dāng)前分支的代碼沒有commit, 如果直接切換到 master 分支的話,dev-101 分支上的新增代碼就會(huì)跑到 master 分支,而代碼又不能此時(shí) commit ,于是就輪到 stash 出場(chǎng)了。

IDEA Git Stash 使用詳解

Stash 會(huì)保存當(dāng)前工作進(jìn)度,會(huì)把暫存區(qū)和工作區(qū)的改動(dòng)保存起來(lái)。

IDEA Git Stash 使用詳解

添加備注,選擇 CREATE STASH。你會(huì)發(fā)現(xiàn)當(dāng)前工作區(qū)內(nèi)的代碼被恢復(fù)成了原樣。

IDEA Git Stash 使用詳解

代碼暫存還原

此刻切換到 master 分支,并創(chuàng)建 bug-12 分支進(jìn)行修復(fù) bug,修復(fù)完成后合并到 master 分支并 push 到遠(yuǎn)程倉(cāng)庫(kù),上文已經(jīng)演示如何合并,在此不再贅述。

將 bug-12 與 master 合并完成之后,現(xiàn)在要接著寫 dev-101 需求代碼,首先先切換到 dev-101 分支;但是之前的代碼已經(jīng)被我們放到了 git 的 stash 當(dāng)中,我們現(xiàn)在要把代碼還原到工作區(qū)當(dāng)中。選擇 Unstash Changes

IDEA Git Stash 使用詳解IDEA Git Stash 使用詳解

選擇之前保存的,同時(shí)勾選 Pop stash(還原完成后,會(huì)自動(dòng)刪除這個(gè) stash),確定后,工作區(qū)之前寫的代碼就又回來(lái)了。

IDEA Git Stash 使用詳解

結(jié)語(yǔ)

Stash 利用好了,就可以自如切換分支,面對(duì)突如其來(lái)的需求也不必?zé)懒藒

到此這篇關(guān)于IDEA Git Stash 使用詳解的文章就介紹到這了,更多相關(guān)IDEA Git Stash 使用內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: IDEA
相關(guān)文章:
主站蜘蛛池模板: 免看一级一片一在线看 | 日韩一区二区三区在线 | 色偷偷成人网免费视频男人的天堂 | 欧美男人操女人 | 成人高清毛片a | 欧美黄视频网站 | 久久国产精品一国产精品 | 97久久曰曰久久久 | 精品久久久中文字幕二区 | 欧美一级www毛片 | 亚洲人成网7777777国产 | 国产午夜毛片一区二区三区 | 亚洲综合亚洲 | 亚洲欧美成人网 | 久久精品视频免费看 | 极品丝袜高跟91白沙发在线 | 国产欧美日韩一区二区三区在线 | 久久久久亚洲精品一区二区三区 | 国产日本三级欧美三级妇三级四 | 国产成人精品在线观看 | 亚洲视频在线观看地址 | 九九视频免费精品视频免费 | 波多野结衣一区二区三区高清在线 | 国产成人精品亚洲777图片 | 一级做a爱过程免费视频时看 | 婷婷国产成人久久精品激情 | 爱爱毛片| 日韩一区二区三区在线播放 | 久久中文字幕综合不卡一二区 | 九九精品视频在线播放 | 99久久99久久精品免费看子伦 | 欧美一级片免费观看 | 日本特黄特色高清免费视频 | 亚洲成人影院在线观看 | 美国第一毛片 | 国产在线91精品入口首页 | 国产欧美亚洲三区久在线观看 | 加勒比一区在线 | 欧美日韩一区二区三在线 | 亚洲成a人一区二区三区 | 一区二区三区在线观看免费 |