二、快速掌握 Git 之 Visual Studio 的使用
經過上一篇部落格的介紹,大家肯定已經掌握的 Git 的基本使用,最起碼已經能夠使用 TortoiseGit 圖形化工具管理本地的各種文件資料。作為技術開發人員,大家更多關注的是 Git 如何管理程式程式碼。雖然 TortoiseGit 圖形化工具也可以管理程式程式碼,但是我們有更好更方便的工具可以使用,今天我就向大家分享一下 Visual Studio 2019 (以下簡稱為 VS2019)整合並使用 Git 的方法,用來管理 .net 相關的程式碼。這裡就不介紹 VS2019 和 Git 的安裝過程中,下面我們就直奔主題。
需要注意的是:本篇部落格仍然介紹的是 Git 操作本地倉庫,後續我會單獨編寫部落格介紹有關 Git 操作遠端倉庫,以及如何搭建開發環境下的 Git 遠端倉庫。
一、配置 VS2019 整合 Git
在 VS2019 和 Git 安裝完成後,首先要配置 VS2019 使用 Git 進行原始碼管理。選擇 VS2019 頂部的選單項(工具 ---> 選項),在彈出的對話方塊中,從左側選擇 ”原始碼管理“,從右側的下拉框中選擇 Git,如下圖所示:
然後發現左側多出來了一些跟 Git 配置有關的選項,從左側選擇 “Git 全域性配置” 這個選項,在右側填寫使用者名稱和郵箱,這裡可以隨便填寫,這個主要是用來在版本歷史記錄中識別使用者身份(識別是哪個使用者提交的版本)。
然後點選確定,儲存配置成功後,就會發現在 VS2019 頂部選單上,多出來了一個 Git 選單,這說明 VS2019 整合 Git 配置成功。
二、建立版本庫和工作目錄
我們先使用 VS2019 建立一個控制檯專案,我的專案儲存路徑是:D:\GitTest\VsDemo 。由於只建立一個簡單的演示專案,為了檢視方便,所以我將解決方案和專案放在同一個目錄中了。在實際工作中的絕大部分場景中,我們都會在一個解決方案下建立多個專案,所以在實際工作中,不要勾選 “將解決方案和專案放在同一個目錄中”。
此時我們發現:新建立的 VsDemo 專案,並沒有被 Git 進行託管,如下圖所示:
我們在 Vs2019 中,選擇 VsDemo 的解決方案,通過滑鼠右鍵選單,選擇 “建立 Git 儲存庫”。
在彈出的對話方塊中,左側選擇 “僅限本地”,右側的本地路徑,預設就是專案所在的資料夾,然後點選 “建立” 即可。
然後我們發現 VsDemo 專案所在目錄中的檔案,有了被託管的綠色圖示,在 VS2019 的解決方案下,檔案前面也有了 “小鎖” 的標誌,這說明 VsDemo 專案的程式碼已經被 Git 進行版本管理,工作目錄已經建立成功。
此時你可以開啟 Program.cs 檔案,編寫一句程式碼,然後發現解決方案下的 Program.cs 檔案前面變成了一個紅色的對勾,表示該檔案被修改過了。
通過 VS2019 的右下角可以看出當前處在 master 分支上,此時你可以將修改過的 Program.cs 檔案,提交到本地倉庫的 master 主分支上。我們可以選擇被修改的檔案,也可以選擇整個解決方案(大部分情況下,都是直接選擇整個解決方案),然後選擇右鍵選單 “Git ---> 提交或儲存” 。
然後會看到下面的介面,可以清楚的看到要提交到的分支版本是 master,填寫好備註資訊後,提交即可。
當你在 VS2019 專案中新建立一個檔案的話,該檔案前面會自動出現一個 + 號標識,編輯完新檔案後,提交即可。至於刪除程式碼檔案,非常簡單,這裡就不截圖進行演示了。
由上面的操作演示,我們可以看到:VS2019 整合 Git 對程式碼檔案的基本操作,實在是太簡單方便了,不需要記憶 Git 命令。
二、建立分支、合併分支、解決衝突、刪除分支
在實際專案開發過程中,我們會經常遇到這樣的情景:master 主分支的程式碼已經測試通過,編譯釋出到公網正式環境了,接下來我們需要開發新的需求功能,此時我們是在 master 主分支上繼續開發新需求功能,還是新建立一個分支開發新需求功能?這主要根據你所要開發的新需求功能的 任務量大小 和 複雜程度 而定。
大部分情況下,我們實際工作中開發的新需求功能,工作量都會比較大,複雜程度也較高,需要花費時間也較長,此時最好建立一個新分支來開發新需求功能,最好讓 master 分支的程式碼版本始終保持跟釋出到公網正式環境的版本一致,這樣做的好處很多。萬一新功能在開發過程中,運營人員反饋了公網環境中的一些 bug,萬一產品經理或者領導要求臨時調整一下公網上的一些介面或功能等等,此時通過修改 master 主分支的程式碼,我們就可以快速響應並及時釋出。等新的功能需求開發完畢測試無誤,釋出到公網正式環境後,我們就可以考慮合併分支,或者直接把新的分支作為主分支。
在上面的基本操作的介紹中,我們已經在 master 分支的 Program.cs 檔案添加了一句程式碼,並且已經提交。下面我們要建立一個新的 dev 分支,在 VS2019 的頂部選單中,選擇 "Git ---> 新建分支 ",如下圖所示:
彈出如下對話方塊,錄入新分支的名稱 dev ,勾選上 “簽出分支” 對話方塊,點選 “建立” 即可。
然後在 Program.cs 檔案添加了一句程式碼(如下圖所示),然後提交程式碼到 dev 分支上。
然後從 VS2019 右下角點選分支的名稱,彈出分支列表介面,選擇 master 分支,將 VsDemo 專案切換到 master 分支上,如下圖所示:
切換到 master 分支後,然後在 Program.cs 檔案添加了一句程式碼(如下圖所示),然後提交程式碼到 master 分支上。
然後在 VS2019 頂部選單,選擇 “Git --> 管理分支”,如下圖所示:
在彈出的管理分支介面的左側列表中,選擇 “dev”,然後開啟右鍵選單,選擇 "將 dev 合併到 master" 選單(如下圖所示)。
合併完成後,由於我們在 master 分支和 dev 分支上,同時更改了 Program.cs 檔案,所以 Program.cs 檔案就有合併衝突,Program.cs 檔案前面的圖示也發生了變化,開啟 Program.cs 檔案可以看到衝突的細節,如下所示:
此時我們有兩種途徑來解決衝突:
1 直接修改 Program.cs 檔案,編譯沒有問題後,提交即可。
2 滑鼠選擇 Program.cs 檔案,點選滑鼠右鍵選單 “Git --> 解決”。
彈出如下介面,分為 左右下 3 個檢視:左側是 dev 分支程式碼,右側是當前合併的目標 master 分支,可以對比出差異,下面是需要修改的最終程式碼檢視。
我們將 Program.cs 檔案修改完成後,編譯執行測試沒有問題後,點選 “接受合併” 即可,然後將合併後的 Program.cs 檔案提交到 master 版本庫。
此時 dev 分支就沒有什麼用處了,我們可以把 dev 分支進行刪除,在 VS2019 頂部選單中,選擇 “Git --> 管理分支”,開啟如下介面,選擇 dev 分支,通過滑鼠右鍵選單選擇 “刪除” 即可,如下所示:
到此為止,有關 VS2019 整合 Git 對程式碼檔案管理的基本操作,已經介紹的差不多了。至於其它相關的操作,一般情況下用的都很少,如果需要用的時候,自己研究一下即可,都是中文選單介面,學習和研究都非常簡單,這裡就不再贅述。通過本篇部落格的介紹,大家已經能夠在本地倉庫中,通過 Visual Studio 整合 Git 並熟練的管理 .net 程式碼的版本了,後續我們繼續編寫有關 Git 的部落格,請大家持續關注。