使用c#以编程方式从TFS签入和签出文件

问题描述 投票:0回答:1

我需要使用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,“以编程方式检查文件”);

我该如何解决这个问题?

c# tfs tfs-sdk checkin
1个回答
1
投票

正如其他人所说,这里存在冲突。这可以通过等待对不是最新的文件版本进行更改并尝试签入来实现。您可以看到与QueryConflicts的冲突。你也可以找到一个sample here

© www.soinside.com 2019 - 2024. All rights reserved.