Я думаю, что можно использовать неправильную команду для рассмотрения списка файлов, которые Вы имеете открытый.
Попытка, делающая :ls
для наблюдения список файлов, которые Вы имеете открытый и Вы будете видеть:
1 %a "./checkin.pl" line 1
2 # "./grabakamailogs.pl" line 1
3 "./grabwmlogs.pl" line 0
etc.
можно тогда возвратиться через файлы путем обращения к ним числами, перечисленными, например:3b
, или можно разделить экран путем введения номера, но использования сурьмы вместо просто b.
Как в стороне % относится к в настоящее время видимому файлу, и # относится к альтернативному файлу.
можно легко переключиться между этими двумя файлами путем нажатия Ctrl Редактирование 6
Сдвига: как :ls
можно использовать :reg
для наблюдения текущего содержания регистров включая 0-9 регистров, которые содержат то, что Вы удалили. Это особенно полезно, если Вы хотите снова использовать некоторый текст, который Вы ранее удалили.
Я бы использовал для этого оснастку PowerShell из последней версии TFS Power Tools.
> $tfs = Get-TfsServer <name> -all
> $tfs.WIT.Projects | % { $_.IterationRootNodes } | ft -auto id, path
Id Path
-- ----
100 Test-ConchangoV2\Release 1\Sprint 1
92 Test-ConchangoV2\Release 1\Sprint 2
97 Test-ConchangoV2\Release 1\Sprint 3
91 Test-ConchangoV2\Release 1\Sprint 4
94 Test-ConchangoV2\Release 1\Sprint 5
93 Test-ConchangoV2\Release 1\Sprint 6
96 Test-ConchangoV2\Release 2\Sprint 1
90 Test-ConchangoV2\Release 2\Sprint 2
98 Test-ConchangoV2\Release 2\Sprint 3
99 Test-ConchangoV2\Release 3\Sprint 1
95 Test-ConchangoV2\Release 3\Sprint 2
89 Test-ConchangoV2\Release 3\Sprint 3
Хорошо - после некоторых дальнейших поисков я нашел приведенный ниже код, который повторяется на всех итерациях, поэтому, используя его подмножество, я получу то, что мне нужно :)
using System;
using Microsoft.TeamFoundation.Client;
using Microsoft.TeamFoundation.WorkItemTracking.Client;
namespace TFSIterationList
{
class Program
{
static void Main(string[] args)
{
string tfsServer = "tfs";
string tfsProject = "Project Name";
TeamFoundationServer tfs = TeamFoundationServerFactory.GetServer(tfsServer);
WorkItemStore store = new WorkItemStore(tfsServer);
PrintTreeNodeCount(store, tfsProject);
}
private static void PrintTreeNodeCount(WorkItemStore store, string tfsProject)
{
int iterationNodeCount = 0;
NodeCollection rootNodeCollection = store.Projects[tfsProject].IterationRootNodes;
GetChildNodeCount(rootNodeCollection, ref iterationNodeCount);
Console.WriteLine(tfsProject + " Iteration nodes : " + iterationNodeCount);
}
private static void GetChildNodeCount(NodeCollection nodeCollection, ref int nodeCount)
{
nodeCount += nodeCollection.Count;
for (int i = 0; i < nodeCollection.Count; i++)
{
Console.WriteLine(nodeCollection[i].Id + " : " + nodeCollection[i].Path);
// Console.WriteLine(nodeCollection[i].Name);
if (nodeCollection[i].ChildNodes.Count > 0)
{
// Recursively walk through the child nodes
GetChildNodeCount(nodeCollection[i].ChildNodes, ref nodeCount);
}
}
}
}
}
, если вы хотите распечатать все области TFS, измените следующую строку:
из: NodeCollection rootNodeCollection = store.Projects [tfsProject] .IterationRootNodes;
в: NodeCollection rootNodeCollection = store .Projects [tfsProject] .AreaRootNodes;
спасибо за код, который мне помог.