鍍金池/ 教程/ C++/ 版本控制的使用
介紹
IntelliJ IDEA 界面介紹
最特殊的快捷鍵 Alt + Enter 介紹
IntelliJ IDEA 配合 Maven 的一些技巧
文件代碼模板的使用
常見文件類型的圖標(biāo)介紹
IntelliJ IDEA 推薦設(shè)置講解
Maven 項(xiàng)目介紹
IntelliJ IDEA 相關(guān)核心文件和目錄介紹
Debug 介紹
IntelliJ IDEA 常用設(shè)置講解 - 2
IntelliJ IDEA 插件開發(fā)視頻教程
IntelliJ IDEA 緩存和索引介紹和清理方法
IntelliJ IDEA 主題、字體、編輯區(qū)主題、文件編碼修改、亂碼問題
Maven 的單模塊 Spring Boot 項(xiàng)目
IntelliJ IDEA 遠(yuǎn)程調(diào)試 Tomcat
插件的使用
IntelliJ IDEA 編譯方式介紹
IntelliJ IDEA For Mac 快捷鍵
IntelliJ IDEA 常用設(shè)置講解 - 1
首次運(yùn)行
Ubuntu 系統(tǒng)下安裝 IntelliJ IDEA
數(shù)據(jù)庫管理工具介紹
重構(gòu)講解
從 Windows 過度到 Mac 必備快捷鍵對照表
Windows 系統(tǒng)下安裝 IntelliJ IDEA
Maven 的單模塊 / 多模塊之 Spring MVC + Spring + Spring Data JPA 項(xiàng)目
版本控制的使用
IntelliJ IDEA 的 Java 熱部署插件 JRebel 安裝及使用
IntelliJ IDEA 常用設(shè)置講解 - 3
Emmet 的使用
Postfix Completion 的使用
Mac 系統(tǒng)下安裝 IntelliJ IDEA
本系列教程結(jié)束
實(shí)時代碼模板的使用
快捷鍵
IntelliJ IDEA 項(xiàng)目相關(guān)的幾個重要概念介紹
安裝總結(jié)
Maven 的單模塊 / 多模塊之 Spring MVC + Spring + Mybatis 項(xiàng)目講解
關(guān)于
Eclipse 的 Java Web 項(xiàng)目環(huán)境搭建
IntelliJ IDEA 常用設(shè)置講解 - 4
Hello World 項(xiàng)目創(chuàng)建與項(xiàng)目配置文件介紹

版本控制的使用

IntelliJ IDEA 下的版本控制介紹

這一章節(jié)放在這么靠前位置來講是因?yàn)榘姹究刂圃谖倚哪恐械牡匚槐群竺娴膶?shí)戰(zhàn)知識點(diǎn)都來得重要。不管是個人開發(fā)或是團(tuán)隊(duì)開發(fā),版本控制都是可以很好地被使用的,目前我找不到任何開發(fā)者不使用版本控制的理由。而且對于 IDE 來講,集成版本控制的本身就是它最大的亮點(diǎn)之一,很多開發(fā)者也是為此而使用它。

在本章節(jié)中也會對 IntelliJ IDEA 的相關(guān)版本控制進(jìn)行了介紹,會開始涉及到一些 IntelliJ IDEA 人性化設(shè)置,也希望你能從這一講開始認(rèn)識到 IntelliJ IDEA 的優(yōu)雅。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-a-version-control-system-introduce-1.jpg" alt="IntelliJ IDEA 下的版本控制介紹" />

  • 很多人認(rèn)為 IntelliJ IDEA 自帶了 SVN 或是 Git 等版本控制工具,認(rèn)為只要安裝了 IntelliJ IDEA 就可以完全使用版本控制應(yīng)有的功能。這完全是一種錯誤的解讀,IntelliJ IDEA 是自帶對這些版本控制工具的支持插件,但是該裝什么版本控制客戶端還是要照樣裝的。
  • 如上圖標(biāo)注 1 所示,IntelliJ IDEA 對版本控制的支持是以插件化的方式來實(shí)現(xiàn)的。旗艦版默認(rèn)支持目前主流的版本控制軟件:CVS、Subversion(SVN)、Git、ClearCase、Mercurial、Perforce、TFS。又因?yàn)槟壳疤嗳耸褂?Github 進(jìn)行協(xié)同或是項(xiàng)目版本管理,所以 IntelliJ IDEA 同時自帶了 Github 插件,方便 Checkout 和管理你的 Github 項(xiàng)目。

SVN 的配置

要在 IntelliJ IDEA 中使用 SVN,需要先安裝 SVN 客戶端或是 TortoiseSVN 這類圖形化工具,Windows 系統(tǒng)這里推薦安裝 TortoiseSVN,即使在不使用 IntelliJ IDEA 也可以方便管理我們的項(xiàng)目。

SVN 主要使用的版本有 1.6、1.7、1.8,最新的是 1.9。推薦大家使用 1.8 的。如果你的項(xiàng)目使用的是 1.6 的版本,在安裝 1.8 之后是可以直接對項(xiàng)目文件進(jìn)行升級的,所以無需擔(dān)心,也因此更加推薦大家使用 1.8。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-b-version-control-system-svn-introduce-1.jpg" alt="SVN 的使用" />

  • 如上圖箭頭所示,在安裝 TortoiseSVN 的時候,默認(rèn) command line client tools,是不安裝的,這里建議勾選上。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-b-version-control-system-svn-introduce-2.jpg" alt="SVN 的使用" />

  • 如上圖標(biāo)注 1 所示,勾選 Use command line client
  • 如上圖標(biāo)注 2 所示,建議 svn 的路徑自己根據(jù)安裝后的路徑進(jìn)行選擇,不然有時候 IntelliJ IDEA 無法識別到會報(bào):Cannot run program "svn" 這類錯誤。
  • 如上圖標(biāo)注 3 所示,當(dāng)使用一段時間 SVN 以后,發(fā)現(xiàn)各種 SVN 相關(guān)問題無法解決,可以考慮點(diǎn)擊此按鈕進(jìn)行清除一下緩存。

根據(jù)目前的使用經(jīng)驗(yàn)來看,IntelliJ IDEA 下 SVN 的使用經(jīng)歷并不算愉快,至少比 Git 不好用很多,經(jīng)常遇到很多問題,所以這里也算是先給大家提個醒。如果緊急情況下 IntelliJ IDEA 無法更新、提交的時候,要記得使用 TortoiseSVN 來操作。

Git 的配置

要在 IntelliJ IDEA 中使用 Git,需要先安裝 Git 客戶端,這里推薦安裝官網(wǎng)版本。

Git 主要的版本有 1.X、2.X,最新的是 2.X,使用版本隨意,但是不要太新了,不然可能 IntelliJ IDEA 小舊版本會無法支持可能。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-c-version-control-system-git-introduce-1.jpg" alt="Git 的使用" />

如上圖標(biāo)注 1 所示,確定好該路徑下是否有對應(yīng)的可執(zhí)行文件。

Github 的配置和使用

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-d-version-control-system-github-introduce-1.jpg" alt="Github 的使用" />

  • 如上圖標(biāo)注 1 所示,填寫你的 Github 登錄賬號和密碼,點(diǎn)擊 Test 可以進(jìn)行測試是否可以正確連上。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-d-version-control-system-github-introduce-2.jpg" alt="Github 的使用" />

  • 如上圖標(biāo)注 1 所示,支持直接從你當(dāng)前登錄的 Github 賬號上 Checkout 項(xiàng)目。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-d-version-control-system-github-introduce-3.jpg" alt="Github 的使用" />

  • 如上圖標(biāo)注 1 所示,支持把當(dāng)前本地項(xiàng)目分享到你的 Github 賬號上。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-d-version-control-system-github-introduce-4.jpg" alt="Github 的使用" />

  • 如上圖標(biāo)注 1 所示,支持創(chuàng)建 Gist。Github 的 Gist 官網(wǎng)地址:https://gist.github.com/

版本控制主要操作按鈕

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-e-version-control-system-operation-introduce-1.jpg" alt="版本控制主要操作按鈕" />

  • 如上圖標(biāo)注 1 所示,對目錄進(jìn)行右鍵彈出的菜單選項(xiàng)。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-e-version-control-system-operation-introduce-2.jpg" alt="版本控制主要操作按鈕" />

  • 如上圖標(biāo)注 1 所示,對文件進(jìn)行右鍵彈出的菜單選項(xiàng)。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-e-version-control-system-operation-introduce-3.jpg" alt="版本控制主要操作按鈕" />

  • 如上圖標(biāo)注紅圈所示,為工具欄上版本控制操作按鈕,基本上大家也都是使用這里進(jìn)行操作。
  • 第一個按鈕:Update Project 更新項(xiàng)目。
  • 第二個按鈕:Commit changes 提交項(xiàng)目上所有變化文件。點(diǎn)擊這個按鈕不會立馬提交所有文件,而是先彈出一個被修改文件的一個匯總框,具體操作下面會有圖片進(jìn)行專門介紹。
  • 第三個按鈕:Compare with the Same Repository Version 當(dāng)前文件與服務(wù)器上該文件通版本的內(nèi)容進(jìn)行比較。如果當(dāng)前編輯的文件沒有修改,則是灰色不可點(diǎn)擊。
  • 第四個按鈕:Show history 顯示當(dāng)前文件的歷史記錄。
  • 第五個按鈕:Revert 還原當(dāng)前被修改的文件到未被修改的版本狀態(tài)下。如果當(dāng)前編輯的文件沒有修改,則是灰色不可點(diǎn)擊。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-e-version-control-system-operation-introduce-4.jpg" alt="版本控制主要操作按鈕" />

  • 如上圖標(biāo)注 1 所示,菜單欄上的版本控制操作區(qū)。

版本控制相關(guān)的常用設(shè)置說明

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-f-version-control-system-settings-introduce-1.jpg" alt="版本控制相關(guān)的常用設(shè)置說明" />

  • 如上圖標(biāo)注 1 所示,當(dāng)前項(xiàng)目使用的版本控制是 Git。如果你不愿意這個項(xiàng)目繼續(xù)使用版本控制可以點(diǎn)擊旁邊的減號按鈕,如果你要切換版本控制,可以點(diǎn)擊 Git,會出現(xiàn) IntelliJ IDEA 支持的各種版本控制選擇列表,但是我們一般情況下一個項(xiàng)目不會有多個版本控制的。
  • 如上圖標(biāo)注 2 所示,Show directories with changed descendants 表示子目錄有文件被修改了,則該文件的所有上層目錄都顯示版本控制被修改的顏色。默認(rèn)是不勾選的,我一般建議勾選此功能。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-f-version-control-system-settings-introduce-2.jpg" alt="版本控制相關(guān)的常用設(shè)置說明" />

  • 如上圖標(biāo)注 1 所示,When files are created 表示當(dāng)有新文件放進(jìn)項(xiàng)目中的時候 IntelliJ IDEA 做如何處理,默認(rèn)是 Show options before adding to version control 表示彈出提示選項(xiàng),讓開發(fā)者決定這些新文件是加入到版本控制中還是不加入。如果不想彈出提示,則選擇下面兩個選項(xiàng)進(jìn)行默認(rèn)操作。
  • 如上圖標(biāo)注 2 所示,When files are deleted 表示當(dāng)有新文件在項(xiàng)目中被刪除的時候 IntelliJ IDEA 做如何處理,默認(rèn)是 Show options before removing from version control 表示彈出提示選項(xiàng),讓開發(fā)者決定這些被刪除的是否從版本控制中刪除。如果不想彈出提示,則選擇下面兩個選項(xiàng)進(jìn)行默認(rèn)操作。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-f-version-control-system-settings-introduce-3.jpg" alt="版本控制相關(guān)的常用設(shè)置說明" />

  • 如上圖標(biāo)注 1 所示,對于不想加入到版本控制的文件,可以添加要此忽略的列表中。但是如果已經(jīng)加入到版本控制的文件使用此功能,則表示該文件 或 目錄無法再使用版本控制相關(guān)的操作,比如提交、更新等。我個人使用過程中發(fā)現(xiàn)在 SVN 上此功能不太好用,Git 上是可以用的。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-f-version-control-system-settings-introduce-4.jpg" alt="版本控制相關(guān)的常用設(shè)置說明" />

  • 上圖所示的彈出層就是本文上面說的 Commit Changes 點(diǎn)擊后彈出的變動文件匯總彈出層。
  • 如上圖標(biāo)注 1 所示,可以在文件上右鍵進(jìn)行操作。
  • Show Diff 當(dāng)前文件與服務(wù)器上該文件通版本的內(nèi)容進(jìn)行比較。
  • Move to Another Changelist 將選中的文件轉(zhuǎn)移到其他的 Change list 中。Change list 是一個重要的概念,這里需要進(jìn)行重點(diǎn)說明。很多時候,我們開發(fā)一個項(xiàng)目同時并發(fā)的任務(wù)可能有很多,每個任務(wù)涉及到的文件可能都是基于業(yè)務(wù)來講的。所以就會存在一個這樣的情況:我改了 30 個文件,其中 15 個文件是屬于訂單問題,剩下 15 個是會員問題,那我希望提交代碼的時候是根據(jù)業(yè)務(wù)區(qū)分這些文件的,這樣我填寫 Commit Message 是好描述的,同時在文件多的情況下,我也好區(qū)分這些要提交的文件業(yè)務(wù)模塊。所以我一般會把屬于訂單的 15 個文件轉(zhuǎn)移到其他的 Change list中,先把專注點(diǎn)集中在 15 個會員問題的文件,先提交會員問題的 Change list,然后在提交訂單會員的 Change list。我個人還有一種用法是把一些文件暫時不提交的文件轉(zhuǎn)移到一個我指定的 Change list,等后面我覺得有必要提交了,再做提交操作,這樣這些文件就不會干擾我當(dāng)前修改的文件提交??偨Y(jié)下 Change list 的功能就是為了讓你更好地管理你的版本控制文件,讓你的專注點(diǎn)得到更好的集中,從而提升效率。
  • Jump to Source 打開并跳轉(zhuǎn)到被選中。
  • 如上圖標(biāo)注 2 所示,可以根據(jù)工具欄按鈕進(jìn)行操作,操作的對象會鼠標(biāo)選中的文件,多選可以按 Ctrl 后不放,需要注意的是這個跟前面的復(fù)選框是沒有多大關(guān)系的。
  • 如上圖標(biāo)注 3 所示,可以在提交前自動對被提交的文件進(jìn)行一些操作事件(該項(xiàng)目使用的 Git,使用其他版本控制可能有些按鈕有差異。):

  • Reformat code 格式化代碼,如果是 Web 開發(fā)建議不要勾選,因?yàn)楦袷交?JSP 類文件,格式化效果不好。如果都是 Java 類則可以安心格式化。
  • Rearrange code 重新編排代碼,IntelliJ IDEA 支持各種復(fù)雜的編排設(shè)置選項(xiàng),這個會在后面說。設(shè)置好了編碼功能之后,這里就可以嘗試勾選這個進(jìn)行自動編排。
  • Optimize imports 優(yōu)化導(dǎo)入包,會自動去掉沒有使用的包。這個建議都勾選,因其只對 Java 類有作用,所以不用擔(dān)心有副作用。
  • Perform code analysis 進(jìn)行代碼分析,這個建議不用在提交的時候處理,而是在開發(fā)完之后,要專門養(yǎng)成對代碼進(jìn)行分析的習(xí)慣。IntelliJ IDEA 集成了代碼分析功能。
  • Check TODO 檢查代碼中的 TODO。TODO 功能后面也會有章節(jié)進(jìn)行講解,這里簡單介紹:這是一個記錄待辦事項(xiàng)的功能。
  • Cleanup 清除下版本控制系統(tǒng),去掉一些版本控制系統(tǒng)的錯誤信息,建議勾選(主要針對 SVN,Git 不適用)。
  • 如上圖標(biāo)注 4 所示,填寫提交的信息。
  • 如上圖標(biāo)注 5 所示,Change list 改變列表,這是一個下拉選項(xiàng),說明我們可以切換不同的 Change list,提交不同的 Change list 文件。
  • 如上圖標(biāo)注箭頭所示,我們可以查看我們提交歷史中使用的 Commit Message,有些時候,我們做得是同一個任務(wù),但是需要提交多次,為了更好管理項(xiàng)目,建議是提交的 Message 是保持一致的。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-f-version-control-system-settings-introduce-5.jpg" alt="版本控制相關(guān)的常用設(shè)置說明" />

  • 如上圖標(biāo)注箭頭所示,如果你使用的 Git,點(diǎn)擊此位置可以切換分支和創(chuàng)建分支,以及合并、刪除分支等操作。

SVN 的使用

SVN 的這個窗口有的 IntelliJ IDEA 上叫 Changes,有的叫 Version Control,具體是什么原因引起這樣的差異,我暫時還不清楚。但是不管叫法如何里面的結(jié)構(gòu)是一樣的,所以對使用者來講沒多大影響,但是你需要知道他們其實(shí)是一樣的功能即可。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-g-svn-feature-1.jpg" alt="SVN 的使用" />

上圖 Local Changes 這個 Tab 表示當(dāng)前項(xiàng)目的 SVN 中各個文件的總的情況預(yù)覽。這里的 Default 是 IntelliJ IDEA 的默認(rèn) change list 名稱,no commit 是我自己創(chuàng)建的一個change list,我個人有一個習(xí)慣是把一些暫時不需要提交的先放這個 list 里面。change list 很常用而且重要,本文前面也有強(qiáng)調(diào)過了,所以一定好認(rèn)真對待。unversioned Files 表示項(xiàng)目中未加到版本控制系統(tǒng)中的文件,你可以點(diǎn)擊 Click to browse,會彈出一個彈出框列表顯示這些未被加入的文件。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-g-svn-feature-2.jpg" alt="SVN 的使用" />

上圖 Repository 這個 Tab 表示項(xiàng)目的 SVN 信息匯總,內(nèi)容非常的詳細(xì),也是我平時用最多的地方。如果你點(diǎn)擊這個 Tab 沒看到數(shù)據(jù),是因?yàn)槟阈枰c(diǎn)擊上圖紅圈這個刷新按鈕。初次使用下默認(rèn)的過濾條件不是我上圖這樣的,我習(xí)慣根據(jù) User 進(jìn)行過濾篩選,所以上圖箭頭中的 Filter 我是選擇 User。選擇之后,如上圖標(biāo)注 1 所示,顯示了這個項(xiàng)目中參與提交的各個用戶名,選擇一個用戶之后,上圖標(biāo)注 2 所以會顯示出該用戶提交了哪些記錄。選擇標(biāo)注 2 區(qū)域中的某個提交記錄后,標(biāo)注 3 顯示對應(yīng)的具體提交細(xì)節(jié),我們可以對這些文件進(jìn)行右鍵操作,具體操作內(nèi)容跟本文上面提到的那些提交時的操作按鈕差不多,這里不多講。

總的來說,SVN 這個功能用來管理和審查開發(fā)團(tuán)隊(duì)中人員的代碼是非常好用的,所以非常非常建議你一定要學(xué)會該功能。

Git 常見問題

  • 更新的時候報(bào):Can't update: no tracked branch
    • 解決辦法:打開 git-bash(路徑:C:\Program Files\Git\git-bash.exe),切換到這個更新不下來的項(xiàng)目的根目錄,然后輸入:git branch --set-upstream-to origin/master master,回車之后重新回到 IntelliJ IDEA 進(jìn)行更新,正常就可以了。
  • 輸錯密碼后,彈出驗(yàn)證的登錄框沒有再出現(xiàn):
    • 解決辦法如下圖:選擇 Do not save, forget passwords after restart 等你確定你的密碼沒錯后再選擇保存密碼方案。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-g-git-problem-1.jpg" alt="Git 常見問題" />

Git Flow 的介紹

Git Flow 概念

  • Git Flow 是一個 git 擴(kuò)展集,按 Vincent Driessen 的分支模型提供高層次的庫操作。這里的重點(diǎn)是 Vincent Driessen 的分支模型思想,下面講解的內(nèi)容也是基于 Vincent Driessen 思想。
    • Vincent Driessen 的觀點(diǎn):http://nvie.com/posts/a-successful-git-branching-model/
    • Git Flow 是一個 git 擴(kuò)展集 你可以理解 Git Flow 是一個基于 Git 的插件,這個插件簡化了 Git 一些復(fù)雜的命令,比如 Git Flow 用一條命令,就可以代替 Git 原生 10 條命令。
    • Git Flow 對原生的 Git 不會有任何影響,你可以照舊用 Git 原生命令,也可以使用 Git Flow 命令。
  • 還有其他的一些分支管理模型思想,具體可以看:http://www.ruanyifeng.com/blog/2015/12/git-workflow.html

Git Flow 核心概念

  • 必須有的兩個核心分支(長期分支):
    • master,Git 代碼倉庫中默認(rèn)的一條主分支。這條分支上的代碼一般都建議為是正式版本的代碼,并且這條分支不能進(jìn)行代碼修改,只能用來合并其他分支。
    • develop,一般用于存儲開發(fā)過程的代碼分支,并且這條分支也不能進(jìn)行代碼修改,只能用來合并其他輔助分支。
  • 根據(jù)情況創(chuàng)建的輔助分支(臨時分支)
    • feature branches(功能分支)
      • 基于 develop 分支上創(chuàng)建
      • 開發(fā)完成后合并到 develop 分支上
      • 當(dāng)要開始一個新功能的開發(fā)時,我門可以創(chuàng)建一個 Feature branches 。等待這個新功能開發(fā)完成并確定應(yīng)用到新版本中就合并回 develop
      • 對于單人開發(fā)的 feature branches,start 之后,開發(fā)完成后可以直接 finish。
      • 對于多人開發(fā)的 feature branches,start 之后,開發(fā)完成后先 publish 給其他開發(fā)人員進(jìn)行合并,最后大家都開發(fā)完成后再 finish。這個思路也同樣適用下面幾個輔助分支場景。
      • feature branches 開發(fā)過程有 bug,直接在 feature branches 上修改、提交。
    • release branches(預(yù)發(fā)布分支)
      • 基于 develop 分支上創(chuàng)建
      • 測試確定新功能沒有問題,合并到 develop 分支和 master 分支上
      • 用來做新版本發(fā)布前的準(zhǔn)備工作,在上面可以做一些小的 bug 修復(fù)、準(zhǔn)備發(fā)布版本號等等和發(fā)布有關(guān)的小改動,其實(shí)已經(jīng)是一個比較成熟的版本了。另外這樣我們既可以在預(yù)發(fā)布分支上做一些發(fā)布前準(zhǔn)備,也不會影響 "develop" 分支上下一版本的新功能開發(fā)。
    • hotfix branches(基于 master 基礎(chǔ)上的生產(chǎn)環(huán)境 bug 的修復(fù)分支)
      • 基于 master 分支上創(chuàng)建
      • 修復(fù)測試無誤后合并到 master 分支和 develop 分支上
      • 主要用于處理線上版本出現(xiàn)的一些需要立刻修復(fù)的 bug 情況

Git Flow 安裝

Git Flow 基礎(chǔ)命令資料

Git Flow Integration 插件的使用

  • 如果你已經(jīng)理解了上面的理論,再看下面這些截圖你能理解對應(yīng)的是什么意思。

http://wiki.jikexueyuan.com/project/intellij-idea-tutorial/images/xvi-h-git-flow-feature-1.png" alt="Git Flow Integration 插件的使用" />

上一篇:本系列教程結(jié)束下一篇:快捷鍵