g4e 是 Git for Enterprise Developer的簡寫,這個系列文章會統一使用g4e作為標識,便於大家檢視和搜尋。
章節目錄
1. 基礎篇:
- 為什麼要使用版本控制系統
- Git 分散式版本控制系統的優勢
- Git 安裝和設定
- 初始化Git儲存庫(Repo)
- 起步 1 – 建立分支和儲存程式碼
- 起步 2 – 瞭解Git歷史記錄
- 起步 3 – 拉取請求 Pull Request 工作機制
現在你已經對Git有了最基本的瞭解,現在讓我們開始動手開始安裝和配置Git環境。
Git工具包括Git命令列工具,圖形化工具和伺服器環境;在我們這個教程中,我們會使用以下軟體配置我們的環境:
• Windows 作業系統(推薦使用Windows 10)
• Git for Windows (2.15或者以上版本)
• Visual Studio 2017 社群免費版
• Visual Studio Code
• Cmder (Windows上最好用的命令列工具)
• Visual Studio Team Services 或者 Team Foundation Server 2018 以上版本
Git for Windows 安裝
這個安裝過有幾個地方大家注意修改一下預設配置,這樣可以讓後面的操作體驗更加流暢。
上圖中最後2個要選中,TrueType字型讓命令列中的文字更加清晰,每天檢查更新保證你可以一直執行Git的最新版本,Git的版本更新還是比較頻繁的,之前我們在很多專案中也發現由於某一版本的缺陷造成問題,所以跟隨最新版本是解決這些問題最簡單的辦法
雖然這個選項有警告,但是我一般都會這樣選擇,因為現在經常需要對Linux環境進行操作,可以在Windows命令列中直接使用這些命令會很方便。
選擇使用 native Windows Secure Channel library可以和企業環境更好的整合,便於和企業域中的證照認證方式一起工作。
這個設定一定要保持預設選擇,因為我們使用的是Windows作業系統,預設使用CRLF換行標識,但是Git預設使用LF換行標識,允許Git在提交檔案時自動完成CRLF->LF的轉換可以確保提交到GitHub/VSTS/TFS的遠端Git庫裡面的檔案可以被正確的識別。你的同事可能使用了Mac/Linux作業系統,這也確保我們可以使用Windows和他們進行更好的協作。
具體可以參考這篇文章:https://www.tuicool.com/articles/IJjQVb
使用預設的Windows命令列作為Git的命令視窗,這一配置和下面的Git Credential Manager也有很大的關係,如果不這樣配置,我們可能無法正常的輸入VSTS/TFS 的賬戶資訊。
最後一定要選擇啟用Git Credential Manger這個選項,我們在操作遠端Git伺服器時經常需要輸入使用者名稱和密碼,選擇這個以後我們可以將身份資訊使用Windows憑據管理器進行儲存,不必每次都輸入了。
按照以上配置完成安裝以後,我們就可以對Git進行一些基本配置了。
1. 設定你的名字和郵件地址:
Git要求在提交時提供名字和郵件地址,這兩個資訊不做設定時無法執行git commit 動作。
git config user.name "你的名字" git config user.email "你的郵件地址"
注:如果你使用的是企業提供的TFS伺服器,請將以上資訊與企業AD域中的郵件地址統一,因為這些資訊會隨著你的提交進入TFS伺服器的Git歷史記錄,保持這些資訊一致有助於其他開發人員通過歷史記錄瞭解你的提交記錄。
2. 針對企業內部TFS的Git伺服器的配置
如果你使用TFS作為Git伺服器,那麼還需要另外執行以下3個命令以便Git Credential Manager 可以正常工作
git config --global credential.helper manager git config --global credential.modalprompt true git config --global credential.{你的TFS伺服器地址}.authority Basic
注:如果你需要了解以上配置到底做了什麼,可以參考:FAQ #1
配置好 Git for Windows 環境以後,其他的圖形化Git工具和IDE都會直接使用以上配置,給予你在任何開發環境中一致的Git使用體驗。
Windows上常用的Git工具
為了能夠讓習慣於使用圖形化工具的開發者滿意,以下我介紹幾款比較好用的工具,供大家參考。
TortoiseGit
這是和大家熟悉的TortoiseSVN一脈相承的一款圖形化Git工具,也就是大家常說的“小烏龜”。應該說,小烏龜是最貼近於Windows使用習慣的一款git工具,因為它提供了非常完善的檔案管理器整合,允許你直接通過檔案管理器完成絕大多數git操作,非常直觀,對於不習慣使用命令列的開發人員來說非常方便。
安裝完成後,直接在任何資料夾中點選右鍵,即可開始進行Git操作。
免費下載地址,建議同時下載中文語言包:
https://tortoisegit.org/download/
Visual Studio
Visual Studio 內建了Git支援,並提供了針對 Visual Studio Team Service 和 Team Foundation Server 的完善整合,另外Visual Studio還是最好的差異比較和衝突解決工具,這一點在後續的操作中大家就會有所體會。
可以通過以下連結下載 Visual Studio 社群免費版,現在的Visual Studio 2017版本已經是全模組化安裝方式,最小安裝僅有僅幾百兆左右。與大家對Visual Studio的傳統理解不同,現在的Visual Studio除了提供微軟技術棧的SDK支援還提供了大量開源技術棧的工具支援,比如:Python, NodeJS, JavaScript和TypeScript等。
另外,除了對Windows上的軟體提供完善的支援,也提供了跨平臺的開發能力,比如:.Net Core, Linux C++等。
安裝完成後,我們即可通過“團隊資源管理器”連線到VSTS,TFS或者GitHub克隆程式碼,開始日常Git操作。
歷史檢視
比較檢視
免費下載地址:
https://www.visualstudio.com/zh-hans/
Visual Studio Code
Visual Studio Code 是一款輕量級的程式碼編輯器,同時具備很強的除錯能力。這款工具由《設計模式》一書的作者,也是Eclipse之父 Eric Gamma 親自操刀開發,是你可以找到的速度最快的,功能最豐富的程式碼編輯器。
vscode中通過外掛的方式提供了大量的git工具,包括:git blame, git history, diff等非常實用強大的工具幫助你解決很多日常使用難題。
下載地址:
https://code.visualstudio.com/
Git企業級私有伺服器環境獲取
GitHub對於開源軟體的開發非常有幫助,但是對於企業開發者來說 Visual Studio Team Service 或者 Team foundation Server 則提供了更為豐富的適合於大規模團隊的功能。VSTS 是託管在微軟雲上的企業級開發平臺,內建了非常完善的Git伺服器支援。與GitHub不同的是,VSTS提供的是免費私有的企業級Git倉庫,而在GitHub上的倉庫預設都是公開的而對私有倉庫收取費用。
VSTS提供5人以下團隊的免費賬號,不限制專案和Git私有儲存庫數量以及大小,可以通過以下地址註冊。
https://www.visualstudio.com/zh-hans/team-services/
註冊過程也很簡單,只需要3步,對於中國開發者來說,2017年10月份上線的香港節點提供了更好的訪問速度,大家在註冊的時候注意選擇區域(預設區域為美國)。
第一步:點選 免費試用
第二步:使用你的Live賬號登陸,如果沒有可以免費註冊
第三步:輸入你自己的賬號別名,並注意選擇 East Asia (中國香港)節點
註冊完成後,我們即可通過 VSTS 示例專案生成器自動建立專案並匯入示例程式碼,同時也會建立工作項,看板,迭代計劃,測試計劃,自動化構建等內容。
第一步:登入https://vstsdemogenerator.azurewebsites.net/ 並輸入你在上面註冊的VSTS賬號,如果需要更為詳細的指導,請掃描以下二維碼
第二步:選擇示例專案套件,在我們這套教程中使用PartsUnlimited示例程式碼
第三步:專案建立成功後即可進入自己的VSTS賬號進行操作了,具體操作指導請掃描以下圖中二維碼
如果大家對VSTS或者TFS本身的其他功能感興趣,請參考 DevOps 文件中心 的 微軟研發雲 部分的文件。
Windows命令列替代品Cmder
最後為了能夠在Windows上更好的使用命令列,你還需要安裝一個叫做Cmder的小工具。這是Windows上最好用的命令列工具,沒有之一。以下簡單列出它的優勢
– 直接使用剪貼簿,用Ctrl+V/C完成拷貝貼上
– 直接使用滑鼠進行內容選擇進行拷貝
– 允許混用Windows和Linux風格的路徑
– 多視窗模式
– git分支顯示
– 內建常用的linux命令,並允許你在Windows上使用,比如(cp, mv, cat, rm,ssh等)
– 內建linux上常用的文字編輯器,如:nano和wim
– 直接適配多種螢幕解析度,可以自由拖拽到任何大小
– 顏色顯示
使用git不能避免命令列,有一款好用的命令列工具會讓你事半功倍,下載地址如下,這是個綠色軟體,直接解壓縮即可使用。
小結
到這裡,我們已經做好了開始使用Git的一切準備,在下一章中我們將開始使用Git實際進行開發工作。
相關文章:
- 微軟研發雲全家桶VSTS登陸中國
- Markdown/reST 文件釋出流水線
- 幾款好用的Git GUI客戶端工具
- 使用 SSH 連線 TFS/VSTS 的GIT倉庫
- GitHub + VSTS 開原始碼雙向同步
請關注微信公眾號 【devopshub】,獲取更多關於DevOps研發運維一體化的資訊