Azure DevOps Services 提供相當完整的 CLI 命令列介面支援,早期你可以使用 VSTS CLI 來操作 Azure DevOps Services 與 Team Foundation Server (TFS),但未來你可能要改用 Azure CLI 並安裝 Azure DevOps extension 來管理 Azure DevOps 上的各種資源。本篇文章將介紹新版 Azure CLI with Azure DevOps extension 的相關用法。
設定步驟
-
請先安裝 Azure CLI 命令列工具
確認 Azure CLI 版本必須在 2.0.49 以上!
az --version
第一次使用 Azure CLI 的話,建議可以先執行 az configure
命令調整預設設定,尤其是調整 default output format 設定,這個設定預設為 json
,方便透過不同 CLI 工具之間整合,但如果經常手動執行 CLI 命令,是可以調整為 table
排版會比較好看。
-
替 Azure CLI 新增 Azure DevOps 擴充命令
執行以下命令將會全自動安裝完成:
az extension add --name azure-devops
檢查目前已安裝的擴充命令:
az extension list
az extension show --name azure-devops
-
第一次使用必須登入 Azure CLI
az login
第一次執行登入時,在 Windows 會自動開啟瀏覽器,並進入 https://aka.ms/devicelogin 網址,你直接透過瀏覽器登入後就可以關閉瀏覽器,回到 Azure CLI 命令列環境下就會發現自動登入成功。
-
設定 Azure DevOps 預設組織與專案
在使用 Azure CLI with Azure DevOps extension 的時候,雖然每個命令都可以特別指定 組織 (organization) 與 專案 (project),但設定好預設值可以有效減少命令的長度,因此建議可以先設定好常用的組織或專案。
僅設定預設組織:
az devops configure --defaults organization=https://dev.azure.com/miniasp
請注意:Azure DevOps Services 的網址都是 https://dev.azure.com/
開頭!
設定預設組織與專案:
az devops configure --defaults organization=https://dev.azure.com/willh project=AngularTW
-
使用 Personal Access Token (PAT) 登入 Azure DevOps
az devops login --organization https://dev.azure.com/contoso
第一次使用可參考 如何建立 PAT 金鑰說明文件
-
啟用 Git Alias 功能支援
使用以下命令啟用 Git Alias 之後,之後只要在 Azure Repos 的 Git 工作目錄下執行 git pr
就等同於輸入 az repos pr
一樣,輸入 git pr list
就可以很便利的列出目前所有的 Pull requests 分支名稱;而輸入 git repo list
也可以自動幫你執行 az repos list
命令。
az devops configure --use-git-alias true
-
列出所有專案
az devops project list
只列出公開專案
az devops project list --query "[?visibility=='public']"
只列出私有專案,且僅顯示專案ID、專案名稱與專案說明欄位
az devops project list --query "[?visibility=='private'].{ProjectID: id, ProjectName: name, ProjectDescription: description}"
-
建立新專案
az devops project create --name "demo1" -d "Demo purpose" -p "scrum" -s "git" --open
-p
可以指定 Work item process,你可以設定 basic
, scrum
, agile
(預設) 或 cmmi
-s
可以指定版控的類型,你可以設定 git
(預設) 或 tfvc
--open
可以在建立完專案後自動開啟瀏覽器,直接進入專案首頁
你也可以使用 --visibility
參數,設定 private
(私有專案) (預設) 或 public
(開源專案)
-
列出所有公告文字
az devops admin banner list
-
新增公告文字
az devops admin banner add -m '所有專案請用 Wikis 來撰寫說明文件!' -t warning
az devops admin banner add -m '!!! CAUTION: PLEASE DO SLEEP WELL' --expiration '2019-05-27 04:00:00 UTC' --org https://dev.azure.com/miniasp
-
更新公告文字
az devops admin banner update --id 3f52ed4b-f3af-400a-962a-bf2adb363019 -m '!!! CAUTION: PLEASE DO SLEEP WELL' --expiration '2019-05-27 04:00:00 UTC' -t error
記得先用 az devops admin banner list
查詢出 banner ID
-
刪除公告文字
az devops admin banner remove --id c40cacd3-cd48-4dd0-b790-64cc3804715b
記得先用 az devops admin banner list
查詢出 banner ID
-
刪除所有公告
az devops admin banner list -o json | jq 'keys | .[]' -r | xargs -I '{}' -s 10 az devops admin banner remove --id '{}'
-
更多實用範例
參考連結