来自多个连接的TFS URL

时间:2018-09-18 14:00:06

标签: powershell tfs tfs2017

我有一个powershell脚本,该脚本将TFS中的多个过程直接部署到数据库中。当前脚本连接到单个TFS Url(在脚本中进行硬编码)。现在,我试图将脚本更新为可以连接到多个TFS,具体取决于脚本所在的位置并能够部署过程。我是否可以使用任何命令来执行相同的命令,而不是使用多个if-else语句并要求用户输入URL?任何帮助将不胜感激。

谢谢。

1 个答案:

答案 0 :(得分:0)

您可以使用TeamProjectPicker Class,它提供一个对话框来选择TeamFoundation项目的集合。

#$visualStudiopath = 'C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer'

$visualStudiopath = 'C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer'
Add-Type -Path "$visualStudiopath\Microsoft.TeamFoundation.VersionControl.Client.dll"
Add-Type -Path "$visualStudiopath\Microsoft.TeamFoundation.Common.dll"
Add-Type -Path "$visualStudiopath\Microsoft.TeamFoundation.WorkItemTracking.Client.dll"
Add-Type -Path "$visualStudiopath\Microsoft.TeamFoundation.Client.dll"
Add-type -path "$visualStudiopath\Microsoft.TeamFoundation.ProjectManagement.dll"
Add-Type -Path "$visualStudiopath\Microsoft.TeamFoundation.Build.Common.dll"

$picker = New-Object Microsoft.TeamFoundation.Client.TeamProjectPicker([Microsoft.TeamFoundation.Client.TeamProjectPickerMode]::NoProject,$false)
$dialogResult = $picker.ShowDialog()
$tfs = $picker.SelectedTeamProjectCollection

enter image description here