获取最新的文件合并名称 azure devops
Get latest file merge name azure devops
我正在为我的项目进行概念验证。其中一项要求是获取最新提交到主分支的文件的名称。我正在从 Azure 管道调用以下命令。
$a = git diff-tree --no-commit-id --name-only -r $(Build.SourceVersion)
当我直接提交文件到主分支时,它工作正常。
当我创建另一个分支并向其添加文件然后将其与主分支合并时,当我尝试相同的命令时它不会获取任何值。或者我也尝试了 git diff-tree --no-commit-id --name-only -r HEAD
,但是当文件在合并过程中被添加到主分支时,这个命令不会 return 任何值。任何指点或帮助将不胜感激。
您可以从 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)
P.S。您可以通过分别添加 --merge
或 --no-merges
开关将其限制为合并或 non-merges。
我正在为我的项目进行概念验证。其中一项要求是获取最新提交到主分支的文件的名称。我正在从 Azure 管道调用以下命令。
$a = git diff-tree --no-commit-id --name-only -r $(Build.SourceVersion)
当我直接提交文件到主分支时,它工作正常。
当我创建另一个分支并向其添加文件然后将其与主分支合并时,当我尝试相同的命令时它不会获取任何值。或者我也尝试了 git diff-tree --no-commit-id --name-only -r HEAD
,但是当文件在合并过程中被添加到主分支时,这个命令不会 return 任何值。任何指点或帮助将不胜感激。
您可以从 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)
P.S。您可以通过分别添加 --merge
或 --no-merges
开关将其限制为合并或 non-merges。