簡述IDEA集成Git在實際項目中的運用
1.企業(yè)實際項目中Git的使用
在實際的企業(yè)項目開發(fā)中,我們一般Java的項目在公司都有自己的局域網(wǎng)代碼倉庫,倉庫上存放著很多的項目。以我工作過的公司如華為的項目,一般是存放在企業(yè)內(nèi)部的CodeHub上;CETC電科是存放在碼云Gitee的企業(yè)版?zhèn)}庫上。而基于Git的使用不再是老掉牙的原始Git命令行,或者是一般的TortoiseGit。
我們在企業(yè)中開發(fā)經(jīng)常使用的是基于IDEA集成Git工具進行代碼的提交,既方便又快捷。同時也是很多有經(jīng)驗的面試官會常用來面試考驗培訓班新手和實際開發(fā)者的常規(guī)性面試問題。
其實企業(yè)開發(fā)規(guī)范的IDEA提交代碼也就那么點要掌握的知識:Git Clone拉代碼倉庫(項目)、IDEA集成git管控項目、Commit/Push、Pull/Stash;當然這是在IDEA中的操作,一個字,熟能生巧,就是敏捷。下面我們就簡單來梳理和掌握吧。
我這里以Gitee上面的一個開源項目:若依來說明,下面是這個項目的地址,其實和企業(yè)中的項目開發(fā)類似,大家可以把它想象成是一個企業(yè)內(nèi)網(wǎng)的托管代碼的倉庫地址。
https://gitee.com/zhangmrit/ruoyi-cloud?_from=gitee_search
1.1.項目的Git Clone
進入到項目中,第一天你肯定得搭個環(huán)境、拉個項目,熟悉一下這個項目的代碼吧。所以我們來把這個項目從Gitee拉取到我們本機開發(fā)的電腦上。
這個我沒什么好說的,你是用老烏龜還是IDEA都能把這個項目拉取到本地。就是復制代碼庫的地址,使用老烏龜?shù)腉it Clone使我們一般的方法,直接可以把項目代碼Clone到本地代碼庫。
而重點是IDEA中的配置,老烏龜落后了,不敏捷,項目都用IDEA,你一個人好意思說你沒用過~~~,尷尬。
在Git中找到Clone,將剛才復制下來的URL地址粘貼進去,之后點擊下面的Clone按鈕即可。(我是用的IDEA2021,公司都用最新版本,用著爽?。。?/p>
好了項目Clone完畢了,IDEA會自動提示你在新窗口中打開我們Clone下來的項目,選擇New Window,在新打開的窗口中就可以看到你Clone的項目,配置好Maven之后,就可以讓它去下載對應的依賴構(gòu)建你的項目了。一般公司的項目就像這個開源項目一樣,構(gòu)建依賴還是有點久的,10分鐘左右吧。哈哈,漫長~
經(jīng)過這個步驟,我們就完成了公司項目的拉取和本地構(gòu)建的工作,IDEA還是很nice的!
1.2.IDEA集成Git管控項目
在實際項目開發(fā)中,我們剛才拉取的分支是master分支,也就是主分支,這個一般是發(fā)布版本分支。而我們一般開發(fā)使用Dev分支,不會直接在master分支上進行開發(fā)。所以在公司我們會看到Clone的分支上有很多分支,我們需要選擇對應的分支進行拉取開發(fā),一般我們會要求在項目上Fork自己的代碼倉庫,單獨自己構(gòu)建一個代碼庫,免得你在master或者大dev分支上亂搞。而對應Java團隊開發(fā)這是非常必要的。
所以我們忘記上面的操作,重新拉取一遍自己的分支。
①Fork自己的代碼倉庫:
②使用Fork的url按照1.1中的步驟重新構(gòu)建自己的項目,同時說明一下在IDEA中對應Git的使用需要關(guān)聯(lián)本機上安裝的Git.exe位置:
1.3.Commit和Push操作
可以看到若依這里有兩個分支:一個是master分支,另外一個是nacos分支,在公司中可能除了master分支外就是dev分支,或者是test分支等等很多分支,我們一般選擇dev分支的代碼進行checkout即可。這里我切換到了nacos分支(假裝它是dev分支)。實際操作也就是選擇對應的分支進行切換就行。
很快我就發(fā)現(xiàn)了項目中的GenUtils中的代碼注釋有問題,這里進行了對應修改補充,使用Git的Commit命令,可以聯(lián)合Push命令進行遠端代碼的推送。
但是注意:在推送的過程中,我們開發(fā)項目可能有別的同時已經(jīng)向總的版本Dev分支上提交了新的代碼,那么我們進行Push的同時需要Pull拉取遠端的Dev分支上最新的代碼看是否存在沖突Confilct,如果有沖突,需要優(yōu)先解決沖突。
添加遠端Dev分支(總的Dev分支,項目的大開發(fā)分支:所有人的代碼都統(tǒng)一合入到這個大Dev_remote分支上)
Pull拉取大分支上最新的代碼:
選擇Git -- Commit提交自己的代碼,同時可以選擇Push將代碼推送到local的Fork倉庫
1.4.創(chuàng)建Pull Request進行Dev代碼合并
這里就是把自己的代碼向Dev大的開發(fā)分支合并,提交自己的工作量代碼啦!
這里需要我們點擊Pull Requests,新建一個合并請求,用于將自己寫的代碼向遠端總的Dev分支上合并代碼。
這樣就完成了自己開發(fā)分支的代碼提交。
1.5.Pull和Stash操作
剛才已經(jīng)說明了,Pull操作就是從遠端分支拉取代碼,更新最新的代碼到自己本地代碼庫。對應操作為:Git -- Pull
選擇對應是Dev分支的Url就行(開發(fā)大版本庫的Url),不是個人Fork的那個開發(fā)倉庫地址。
Stash操作:
Stash可以在你寫了很多的代碼類時,比如有10-20多個新文件,我一下子從遠端拉取會有很多沖突的時候,我就可以用Stash操作把自己的代碼優(yōu)先推送到本地倉庫。
如下,我這里寫了一個很完美的RedisUtil工具類,但是和遠端上面有了一個Redis工具類,我這個工具類就顯得多余,但是我又不想有沖突,這里就用IDEA的Stash緩存我的代碼。
點擊Create Stash之后,你本地的所有新文件更新的代碼都會暫存到本地倉庫中,沖突文件也會從項目中消失,這樣你就可以拉取Pull到Dev最新的代碼,完全不用擔心有任何沖突(這里就不同于直接Commit從遠端Pull代碼,如果有沖突Pull不會成功的,會有很多沖突的文件需要處理)。
Stash之后,可以直接絲滑地拉取遠端代碼。
之后使用Unstash Changes,選擇對應的Stashes節(jié)點,就可以將原來的文件又恢復到本地,這個時候再解決沖突即可,這樣保證了我們寫代碼的爽快感,而又能及時獲取同步最新的代碼庫信息。在協(xié)同編程中非常常用。
Stash更詳細的解釋可以參考另一篇博文:Git中的Stash Changes和UnStash Changes用法
以上就是企業(yè)項目開發(fā)中涉及IDEA中Git開發(fā)的主要要知道的技能點,無論是用IDEA還是老烏龜?shù)腉it提交工具,哪個順手哪個能提高效率就用哪個。但是項目團隊成員都用你不能不知道,不知道也要及時去學習,補上自己的遺漏點。
多做,少想,少發(fā)言,行動的巨人永遠大于思想的矮子。
博文參考:
完整教程-idea使用git進行項目管理(總結(jié)版)
到此這篇關(guān)于IDEA集成Git在實際項目中的運用的文章就介紹到這了,更多相關(guān)IDEA集成Git內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
springboot自動重連Redis的實現(xiàn)方法
由于網(wǎng)絡或服務器問題,Redis連接可能會斷開,導致應用程序無法繼續(xù)正常工作,本文主要介紹了springboot自動重連Redis的實現(xiàn)方法,具有一定的參考價值,感興趣的可以了解一下2024-02-02elasticsearch的靈魂唯一master選舉機制原理分析
這篇文章主要為大家介紹了elasticsearch的靈魂唯一master選舉機制原理分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-04-04Java實現(xiàn)的不同圖片居中剪裁生成同一尺寸縮略圖功能示例
這篇文章主要介紹了Java實現(xiàn)的不同圖片居中剪裁生成同一尺寸縮略圖功能,涉及java針對圖片的讀取、屬性修改等相關(guān)操作技巧,需要的朋友可以參考下2017-09-09MybatisPlus:使用SQL保留字(關(guān)鍵字)的操作
這篇文章主要介紹了MybatisPlus:使用SQL保留字(關(guān)鍵字)的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-11-11