Powershell -过滤器git-for-each-ref忽略某些refname值

jq6vz3qz  于 2023-02-28  发布在  Git
关注(0)|答案(1)|浏览(121)

我在Powershell中运行下面的git命令
git for-each-ref --sort=-committerdate refs/remotes --format='%(refname:short)%09%(committername)'
如何过滤掉(不列出)refname以'origin/Release'开头的分支?

yvgpqqbh

yvgpqqbh1#

使用-match regex比较运算符--与PowerShell中的其他比较运算符一样,如果您在左侧传递一个数组,它将充当过滤器:

$branchesWithCommitter = @(git for-each-ref --sort=-committerdate refs/remotes --format='%(refname:short)%09%(committername)')

$branchesWithCommitter -match '^origin/release'

@(...)数组子表达式运算符将阻塞,直到git.exe返回。
如果你想看到git.exe输出的几乎实时的代码行,可以将输出传输到Where-Object,并在每一行使用-match

git for-each-ref --sort=-committerdate refs/remotes --format='%(refname:short)%09%(committername)' |Where-Object { $_ -match '^origin/release' }

相关问题