将项目更改标记为源代码管理中的待处理

时间:2017-10-25 15:09:16

标签: tfs msbuild

我有一个小型C#控制台程序,它使用Microsoft.Build.Evaluation.Project的AddItem()方法将多个语言.resx文件添加到多个解决方案中的所有项目中。这工作正常。

问题是,这些更改不会显示为源代码管理中的挂起更改。我希望将.csproj文件标记为挂起更改,将新的.resx标记为挂起添加。应该使用哪些API来执行此操作?我找到了SccAdd()本机API(https://docs.microsoft.com/en-us/visualstudio/extensibility/sccadd-function),但它看起来像是需要由IDE调用的东西,而不是我的命令行实用程序。

环境:c#控制台程序是VS2015。它正在修改的项目是VS2008 Compact Framework 3.5。目前的源控制系统是TFS 2015。

1 个答案:

答案 0 :(得分:0)

您可以使用 TFS API 挂起工作区中的更改,然后将文件签入TFS。使用Workspace.PendAdd方法队列文件或文件夹添加到版本控制存储库。创建临时工作空间或使用项目文件所在的工作空间。

以下是使用TFS API添加待处理更改,签入代码的详细信息example。你也可以看看这个问题:Calls to `Workspace.PendAdd` not adding items