Azure Repos 是一組版本控制工具,可以用來(lái)管理代碼。 不管軟件項(xiàng)目是大還是小,都應(yīng)盡快使用版本控制。
版本控制系統(tǒng)是一種軟件,可幫助你跟蹤你在代碼中所做的更改。 編輯代碼時(shí),通知版本控制系統(tǒng)生成文件的快照。 版本控制系統(tǒng)會(huì)永久保存此文件快照,以便用戶稍后能夠根據(jù)需要進(jìn)行查閱。 使用版本控制保存你的工作并協(xié)調(diào)團(tuán)隊(duì)內(nèi)的代碼更改。
即使只是一個(gè)開發(fā)人員,版本控制也能幫助你在修復(fù) bug 和開發(fā)新功能時(shí)保持井然有序。 版本控制可保留你的開發(fā)歷史記錄,以便你可以輕松地查看甚至回滾到任何代碼版本。
Azure Repos 提供了兩種類型的版本控制:
Git:分布式版本控制
(TFVC) Team Foundation 版本控制 :集中版本控制
Git 是現(xiàn)今最常用的版本控制系統(tǒng),并迅速成為版本控制標(biāo)準(zhǔn)。 Git 是分布式版本控制系統(tǒng),這意味著,本地代碼副本是一個(gè)完整的版本控制存儲(chǔ)庫(kù)。 使用這些功能齊全的本地存儲(chǔ)庫(kù),可以輕松開展脫機(jī)或遠(yuǎn)程工作。 先在本地提交工作,再將存儲(chǔ)庫(kù)的副本與服務(wù)器上的副本進(jìn)行同步。
Azure Repos 中的 git 是標(biāo)準(zhǔn) Git。 你可以使用所選的客戶端和工具(例如適用于 Windows、Mac、合作伙伴的 Git 服務(wù)的 Git)和工具(如 Visual Studio 和 Visual Studio Code)。
連接喜歡的開發(fā)環(huán)境
通過(guò)拉取請(qǐng)求評(píng)審代碼
保護(hù)具有策略的分支
將拉取請(qǐng)求工作流擴(kuò)展到拉取請(qǐng)求狀態(tài)
用分叉隔離代碼
將你最喜歡的開發(fā)環(huán)境連接到 Azure Repos 以訪問(wèn)存儲(chǔ)庫(kù)并管理你的工作。 使用以下內(nèi)容共享你的代碼:
命令行
Visual Studio Code
Visual Studio
Xcode
Eclipse
IntelliJ
與你的團(tuán)隊(duì)一起查看代碼,并確保在合并前更改生成和傳遞測(cè)試。
創(chuàng)建拉取請(qǐng)求
將工作項(xiàng)鏈接到拉取請(qǐng)求
設(shè)置分支策略
擠壓合并拉取請(qǐng)求
Git 分支和拉取請(qǐng)求工作流
退出注釋
對(duì)更改投票
存儲(chǔ)庫(kù)中有幾個(gè)關(guān)鍵分支,團(tuán)隊(duì)依賴于始終處于良好的形狀,例如 master
分支。 需要拉取請(qǐng)求 才能在這些分支上進(jìn)行任何更改。 直接將更改推送到受保護(hù)分支的開發(fā)人員將拒絕其推送。
將條件添加到拉取請(qǐng)求,以在關(guān)鍵分支中強(qiáng)制執(zhí)行更高級(jí)別的代碼質(zhì)量。 合并代碼的干凈生成和多個(gè)審閱者的審批是可以設(shè)置的額外要求,以幫助保護(hù)關(guān)鍵分支。
分支策略概述
如何配置分支策略
分支權(quán)限
使用拉取請(qǐng)求和分支策略,團(tuán)隊(duì)可以強(qiáng)制實(shí)施與查看代碼和運(yùn)行自動(dòng)生成相關(guān)的許多最佳實(shí)踐。 但許多團(tuán)隊(duì)都需要對(duì)代碼執(zhí)行其他要求和驗(yàn)證。 為了滿足這些個(gè)人和自定義需求,Azure Repos 提供拉取請(qǐng)求狀態(tài)。
拉取請(qǐng)求狀態(tài)集成到 PR 工作流。 它們?cè)试S外部服務(wù)通過(guò)將簡(jiǎn)單的成功/失敗信息與拉取請(qǐng)求相關(guān)聯(lián),以編程方式對(duì)代碼更改進(jìn)行簽名。
拉取請(qǐng)求狀態(tài)概述
使用 Node.js創(chuàng)建 PR 狀態(tài)服務(wù)器
使用 Azure Functions 創(chuàng)建自定義分支策略
為外部服務(wù)配置分支策略
分叉是一種隔離原始代碼庫(kù)中實(shí)驗(yàn)性、風(fēng)險(xiǎn)或機(jī)密更改的好方法。 分叉是存儲(chǔ)庫(kù)的完整副本,其中包括所有文件、提交和 ((可選)) 分支。 新分叉的行為就像有人克隆了原始存儲(chǔ)庫(kù),然后將其推送到新的空存儲(chǔ)庫(kù)。
創(chuàng)建分叉后,除非拉取請(qǐng)求一起執(zhí)行,否則不會(huì)在存儲(chǔ)庫(kù)之間共享新的文件、文件夾和分支。 準(zhǔn)備好共享這些更改后,可以輕松地使用 拉取請(qǐng)求 將更改推送回原始存儲(chǔ)庫(kù)。
了解有關(guān)分叉的詳細(xì)信息
Azure Repos 還支持 (TFVC) Team Foundation 版本控制。 TFVC 是一個(gè)集中式版本控制系統(tǒng)。 通常,團(tuán)隊(duì)成員的開發(fā)計(jì)算機(jī)上的每個(gè)文件只有一個(gè)版本。 歷史數(shù)據(jù)僅在服務(wù)器上維護(hù)。 分支是基于路徑的,并且在服務(wù)器上創(chuàng)建。
首先,創(chuàng)建一個(gè)項(xiàng)目,配置工作區(qū),查看并共享你的代碼。 你可以使用以下任一客戶端或 Ide:
Visual Studio
Xcode
Eclipse