簡述IDEA集成Git在實際項目中的運用

1.企業實際項目中Git的使用

在實際的企業項目開發中,我們一般Java的項目在公司都有自己的局域網代碼倉庫,倉庫上存放著很多的項目。以我工作過的公司如華為的項目,一般是存放在企業內部的CodeHub上;CETC電科是存放在碼雲Gitee的企業版倉庫上。而基於Git的使用不再是老掉牙的原始Git命令行,或者是一般的TortoiseGit。

我們在企業中開發經常使用的是基於IDEA集成Git工具進行代碼的提交,既方便又快捷。同時也是很多有經驗的面試官會常用來面試考驗培訓班新手和實際開發者的常規性面試問題。

其實企業開發規范的IDEA提交代碼也就那麼點要掌握的知識:Git Clone拉代碼倉庫(項目)、IDEA集成git管控項目、Commit/Push、Pull/Stash;當然這是在IDEA中的操作,一個字,熟能生巧,就是敏捷。下面我們就簡單來梳理和掌握吧。

我這裡以Gitee上面的一個開源項目:若依來說明,下面是這個項目的地址,其實和企業中的項目開發類似,大傢可以把它想象成是一個企業內網的托管代碼的倉庫地址。

https://gitee.com/zhangmrit/ruoyi-cloud?_from=gitee_search

1.1.項目的Git Clone

進入到項目中,第一天你肯定得搭個環境、拉個項目,熟悉一下這個項目的代碼吧。所以我們來把這個項目從Gitee拉取到我們本機開發的電腦上。

這個我沒什麼好說的,你是用老烏龜還是IDEA都能把這個項目拉取到本地。就是復制代碼庫的地址,使用老烏龜的Git Clone使我們一般的方法,直接可以把項目代碼Clone到本地代碼庫。

而重點是IDEA中的配置,老烏龜落後瞭,不敏捷,項目都用IDEA,你一個人好意思說你沒用過~~~,尷尬。

在Git中找到Clone,將剛才復制下來的URL地址粘貼進去,之後點擊下面的Clone按鈕即可。(我是用的IDEA2021,公司都用最新版本,用著爽啊!)

好瞭項目Clone完畢瞭,IDEA會自動提示你在新窗口中打開我們Clone下來的項目,選擇New Window,在新打開的窗口中就可以看到你Clone的項目,配置好Maven之後,就可以讓它去下載對應的依賴構建你的項目瞭。一般公司的項目就像這個開源項目一樣,構建依賴還是有點久的,10分鐘左右吧。哈哈,漫長~

經過這個步驟,我們就完成瞭公司項目的拉取和本地構建的工作,IDEA還是很nice的!

1.2.IDEA集成Git管控項目

在實際項目開發中,我們剛才拉取的分支是master分支,也就是主分支,這個一般是發佈版本分支。而我們一般開發使用Dev分支,不會直接在master分支上進行開發。所以在公司我們會看到Clone的分支上有很多分支,我們需要選擇對應的分支進行拉取開發,一般我們會要求在項目上Fork自己的代碼倉庫,單獨自己構建一個代碼庫,免得你在master或者大dev分支上亂搞。而對應Java團隊開發這是非常必要的。

所以我們忘記上面的操作,重新拉取一遍自己的分支。

①Fork自己的代碼倉庫:

②使用Fork的url按照1.1中的步驟重新構建自己的項目,同時說明一下在IDEA中對應Git的使用需要關聯本機上安裝的Git.exe位置:

1.3.Commit和Push操作

可以看到若依這裡有兩個分支:一個是master分支,另外一個是nacos分支,在公司中可能除瞭master分支外就是dev分支,或者是test分支等等很多分支,我們一般選擇dev分支的代碼進行checkout即可。這裡我切換到瞭nacos分支(假裝它是dev分支)。實際操作也就是選擇對應的分支進行切換就行。

很快我就發現瞭項目中的GenUtils中的代碼註釋有問題,這裡進行瞭對應修改補充,使用Git的Commit命令,可以聯合Push命令進行遠端代碼的推送。

但是註意:在推送的過程中,我們開發項目可能有別的同時已經向總的版本Dev分支上提交瞭新的代碼,那麼我們進行Push的同時需要Pull拉取遠端的Dev分支上最新的代碼看是否存在沖突Confilct,如果有沖突,需要優先解決沖突。

添加遠端Dev分支(總的Dev分支,項目的大開發分支:所有人的代碼都統一合入到這個大Dev_remote分支上)

Pull拉取大分支上最新的代碼:

選擇Git — Commit提交自己的代碼,同時可以選擇Push將代碼推送到local的Fork倉庫

1.4.創建Pull Request進行Dev代碼合並

這裡就是把自己的代碼向Dev大的開發分支合並,提交自己的工作量代碼啦!

這裡需要我們點擊Pull Requests,新建一個合並請求,用於將自己寫的代碼向遠端總的Dev分支上合並代碼。

這樣就完成瞭自己開發分支的代碼提交。

1.5.Pull和Stash操作

剛才已經說明瞭,Pull操作就是從遠端分支拉取代碼,更新最新的代碼到自己本地代碼庫。對應操作為:Git — Pull

選擇對應是Dev分支的Url就行(開發大版本庫的Url),不是個人Fork的那個開發倉庫地址。

Stash操作:

Stash可以在你寫瞭很多的代碼類時,比如有10-20多個新文件,我一下子從遠端拉取會有很多沖突的時候,我就可以用Stash操作把自己的代碼優先推送到本地倉庫。

如下,我這裡寫瞭一個很完美的RedisUtil工具類,但是和遠端上面有瞭一個Redis工具類,我這個工具類就顯得多餘,但是我又不想有沖突,這裡就用IDEA的Stash緩存我的代碼。

點擊Create Stash之後,你本地的所有新文件更新的代碼都會暫存到本地倉庫中,沖突文件也會從項目中消失,這樣你就可以拉取Pull到Dev最新的代碼,完全不用擔心有任何沖突(這裡就不同於直接Commit從遠端Pull代碼,如果有沖突Pull不會成功的,會有很多沖突的文件需要處理)。

Stash之後,可以直接絲滑地拉取遠端代碼。

之後使用Unstash Changes,選擇對應的Stashes節點,就可以將原來的文件又恢復到本地,這個時候再解決沖突即可,這樣保證瞭我們寫代碼的爽快感,而又能及時獲取同步最新的代碼庫信息。在協同編程中非常常用。

Stash更詳細的解釋可以參考另一篇博文:Git中的Stash Changes和UnStash Changes用法

以上就是企業項目開發中涉及IDEA中Git開發的主要要知道的技能點,無論是用IDEA還是老烏龜的Git提交工具,哪個順手哪個能提高效率就用哪個。但是項目團隊成員都用你不能不知道,不知道也要及時去學習,補上自己的遺漏點。

多做,少想,少發言,行動的巨人永遠大於思想的矮子。

博文參考:

完整教程-idea使用git進行項目管理(總結版)

到此這篇關於IDEA集成Git在實際項目中的運用的文章就介紹到這瞭,更多相關IDEA集成Git內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: