我正在使用 TFS 2010 SDK 以编程方式将对文件的编辑 checkin 到 TFS 2010 中。TFS 2010 SDK 的文档充其量也很少。当我调用方法workspace.pendedit() 并传入一个我想要标记为具有挂起编辑的文件数组时,实际上没有 checkout 任何内容。因此,当我调用workspace.checkin()传入workspace.getpendingchanges和一些注释时,我得到一个异常,即必须至少有一件事情有待处理的更改(这应该是我传递给pendedit的内容)。关于为什么应用程序没有将文件标记为在工作区中有待编辑的任何想法?
最佳答案
确保您按照正确的顺序执行所有操作,以便 TFS 知道文件已更改。你必须:
- 首先从工作区获取文件。
- 等待编辑
- 对文件进行更改
- 检查工作区。
示例:
GetStatus status = workspace.Get(new GetRequest(migrationPath, RecursionType.None,
VersionSpec.Latest),GetOptions.Overwrite);
workspace.PendEdit(migrationPath);
checkInAuthor = System.Security.Principal.WindowsIdentity.GetCurrent().Name;
关于.net-4.0 - Workspace.PendEdit 未 checkout 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2954354/