私はプログラム的にSDKを使用してTFSのうち、ソースコードの最新バージョンを引くしようとしてる、と私は何とかやったことは動作しません:Team Foundation Server SDKを使用して最新バージョンのソースコードを入手するにはどうすればよいですか?
string workspaceName = "MyWorkspace";
string projectPath = "/TestApp";
string workingDirectory = "C:\Projects\Test\TestApp";
VersionControlServer sourceControl; // actually instantiated before this method...
Workspace[] workspaces = sourceControl.QueryWorkspaces(workspaceName, sourceControl.AuthenticatedUser, Workstation.Current.Name);
if (workspaces.Length > 0)
{
sourceControl.DeleteWorkspace(workspaceName, sourceControl.AuthenticatedUser);
}
Workspace workspace = sourceControl.CreateWorkspace(workspaceName, sourceControl.AuthenticatedUser, "Temporary Workspace");
try
{
workspace.Map(projectPath, workingDirectory);
GetRequest request = new GetRequest(new ItemSpec(projectPath, RecursionType.Full), VersionSpec.Latest);
GetStatus status = workspace.Get(request, GetOptions.GetAll | GetOptions.Overwrite); // this line doesn't do anything - no failures or errors
}
finally
{
if (workspace != null)
{
workspace.Delete();
}
}
アプローチは基本的に、一時的なワークスペースを作成、使用されますGet()
メソッドを使用してこのプロジェクトのすべてのアイテムを取得し、ワークスペースを削除します。これを行う正しい方法ですか?どんな例であれ有用です。
が、変更するとともに、すべてのサポートDLLをコピーしますその道はうまくいかないようでした。私はすべての出来事を配線してみましたが、いずれも解雇されませんでした。私は完全に別の戦略(item.DownloadFile)を使用して終了し、その方法はうまくいくように見えました - そして、ワークスペースは必要ありませんでした。 –
@JohnRasch、同じ問題を抱えているので、コードスニペットを共有してください。 :( – UserAR