我正在為我的專案進行概念驗證。要求之一是獲取最新提交到主分支的檔案的名稱。我從 Azure 管道呼叫以下命令。
$a = git diff-tree --no-commit-id --name-only -r $(Build.SourceVersion)
當我直接將檔案提交到主分支時它作業正常。當我創建另一個分支并向其添加檔案然后將其與主分支合并時,當我嘗試相同的命令時,它不會為我獲取任何值。或者我也嘗試過git diff-tree --no-commit-id --name-only -r HEAD,但是在合并程序中將檔案添加到主分支時,此命令不回傳任何值。任何指標或幫助將不勝感激。
uj5u.com熱心網友回復:
您可以使用以下命令從分支獲取最新的提交哈希,main無論這是否是合并:
git log -n 1 --pretty=format:"%H" main
然后,您應該能夠將其連接到您現有的命令中,例如:
git diff-tree --no-commit-id --name-only -r $(git log -n 1 --pretty=format:"%H" main)
--mergePS您可以通過分別添加或--no-merges開關將其限制為合并或非合并。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/477766.html
標籤:混帐 天蓝色 天蓝色的devops
上一篇:未跟蹤的git子模塊
