經過上一篇博客的介紹,大家肯定已經掌握的 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 的博客,請大家持續關注。