Git远程分支列表

时间:2015-08-07 15:21:56

标签: git powershell foreach git-branch

我正在寻找在Powershell脚本中为每个Git远程分支执行函数的最佳方法。

我不知道获取Git远程分支列表的最佳方法。我可以成功列出所有远程分支,但我总是在分支名称中使用讨厌的格式。

以下是我尝试过的命令以及我得到的结果。

$allBranches = git branch -r
$allBranches = @('  origin/branch1', '  origin/branch2', '  origin/branch3')

$allBranches = git for-each-ref --shell --format=%(refname) refs/remotes/origin
$allBranches = @(''origin/branch1'', ''origin/branch2'', ''origin/branch3'')

我想 $allBranches = @('origin/branch1', 'origin/branch2', 'origin/branch3'),所以 我目前的方法是使用Trim()

手动删除奇怪的分支名称中的格式
foreach($branch in $allBranches) {
    #format $branch
    #do function
}

有人有更好的方法吗?

2 个答案:

答案 0 :(得分:2)

Trim()操作应该做你想要的。

$allTrimmedBranches = @()
foreach($branch in $allBranches) {
    $allTrimmedBranches += $branch.Trim()
}
#do function

答案 1 :(得分:2)

$branches = git for-each-ref --format='%(refname:short)' refs/remotes/origin