使用 C# 以编程方式从 TFS 签入和签出文件
Checkin and Checkout file from TFS programmatically using c#
我需要使用 C# 以编程方式从 TFS 检出和检入文件。我使用的代码如下所示。
var tfs = new TfsTeamProjectCollection(new Uri("http://MyTFSServer/"));
var versionControlServer = tfs.GetService<VersionControlServer>();
var workspace = versionControlServer.GetWorkspace(@"D:\Projects\");
var file = @"D:\Projects\Test.txt";
workspace.PendEdit(file);
using (StreamWriter sw = new StreamWriter(file))
{
sw.WriteLine("Test");
}
var pendingChange = workspace.GetPendingChanges();
var changesetNumber = workspace.CheckIn(pendingChange, "checkedin the file programmatically");
但是当我执行这段代码时,我得到了一个 CheckinException - TF10141:没有签入文件:解决冲突并重试。
在行 workspace.CheckIn(pendingChange, "checkedin the file programmatically");
我该如何解决这个问题?
正如其他人所说,这里有冲突。这可以通过挂起对不是最新版本的文件的更改并尝试签入来发生。您可以看到与 QueryConflicts. You can also find a sample here.
的冲突
我需要使用 C# 以编程方式从 TFS 检出和检入文件。我使用的代码如下所示。
var tfs = new TfsTeamProjectCollection(new Uri("http://MyTFSServer/"));
var versionControlServer = tfs.GetService<VersionControlServer>();
var workspace = versionControlServer.GetWorkspace(@"D:\Projects\");
var file = @"D:\Projects\Test.txt";
workspace.PendEdit(file);
using (StreamWriter sw = new StreamWriter(file))
{
sw.WriteLine("Test");
}
var pendingChange = workspace.GetPendingChanges();
var changesetNumber = workspace.CheckIn(pendingChange, "checkedin the file programmatically");
但是当我执行这段代码时,我得到了一个 CheckinException - TF10141:没有签入文件:解决冲突并重试。 在行 workspace.CheckIn(pendingChange, "checkedin the file programmatically");
我该如何解决这个问题?
正如其他人所说,这里有冲突。这可以通过挂起对不是最新版本的文件的更改并尝试签入来发生。您可以看到与 QueryConflicts. You can also find a sample here.
的冲突