Я пытаюсь получить последнюю информацию о конкретной папке и задавался вопросом, как я это сделаю. Я читал документацию MSDN о классе Workspace, но, к сожалению, он, похоже, не предоставляет никакой информации о том, как я буду получать последнюю из конкретной папки.Powershell получить последние в рабочей папке?
Например, у меня есть одно рабочее пространство, но с несколькими рабочими папками. Мой сценарий PowerShell может быть последним, но только на уровне рабочей области. Можно ли получить его с рабочего уровня каталога или на определенном уровне папки?
Заранее спасибо, DS.
EDIT Я считаю, что это возможно, так как электроинструменты могут сделать это, щелкнув правой кнопкой мыши папку и получив последнюю. В идеале, хотите воспроизвести это.
Ниже показан мой сценарий на практике ..
$tfs = .\tfs-get-instance.ps1 -uri $uri
$vcs = $tfs.TfsTeamProjectCollection.GetService([Microsoft.TeamFoundation.VersionControl.Client.VersionControlServer])
[psobject]$workspace = $vcs.GetWorkspace([System.Environment]::MachineName, [System.Environment]::UserName)
$workspace.Map($sourceFolder, $localFolder)
$result = $workspace.GetLocalItemForServerItem($sourceFolder);
if ($result -ne "")
{
echo $result
}
Я пытаюсь избежать использования TFExePath :) Workspace.Get() получает все в рабочей области. Обходной путь, который я придумал, заключается в создании нового временного рабочего пространства, его сопоставлении, затем его удалении. –
Метод Get, связанный выше, не обязательно получит всю рабочую область. Первый параметр позволяет предоставить массив путей к элементам ($ codePath). Поэтому попробуйте использовать этот метод и сделайте что-то похожее на '$ workspace.Get (@ ('$/Path/That/I/Want/To/Get'), $ versionSpec, [Microsoft.TeamFoundation.VersionControl.Client.RecursionType]: : Полный, [Microsoft.TeamFoundation.VersionControl.Client.GetOptions] :: Overwrite) '(документация о том, что вы можете передать как $ versionSpec по адресу http://msdn.microsoft.com/en-us/library/microsoft.teamfoundation. versioncontrol.client.versionspec.aspx). Дайте мне знать, как это происходит. –