tfs - 如何以编程方式合并 TFS 更改集?

标签 tfs merge changeset

我知道如何使用命令行命令“tf merge”合并 TFS 2010 中的更改集。

有没有办法在 C# 中用代码来做到这一点。我只想合并特定的更改集(樱桃选择),一次一个。

最佳答案

如果您使用 2010 或 2012 TFS 对象模型,这大致是您将如何做到的。如果您有任何问题,请告诉我。

// Get a reference to yourTeam Foundation Server. 
TfsTeamProjectCollection tpc = new TfsTeamProjectCollection(new Uri("http://<yourserver>:8080/tfs/<yourcollection> "));

// Get a reference to Version Control. 
VersionControlServer versionControl = tpc.GetService<VersionControlServer>();

Workspace workspace = versionControl.GetWorkspace("<local path to your workspace>");

string sourceBranch = "$/<sourceBranch>";
string targetBranch = "$/<targetBranch>";
VersionSpec changesetToMerge = new ChangesetVersionSpec(<your changeset here>);

// actually pend the merge
workspace.Merge(sourceBranch, targetBranch, changesetToMerge, changesetToMerge);

// check in the merge
workspace.CheckIn(workspace.GetPendingChanges(), "your comment");

关于tfs - 如何以编程方式合并 TFS 更改集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12092854/

相关文章:

elixir - Phoenix/Ecto 变更集出现问题

linux - TFS 工作区和工作文件夹在 Linux 上与托管 TFS 发生冲突 (VisualStudio.com)

algorithm - 合并排序中合并操作的复杂性

git - 是否可以一起使用 GIT 和 TFS 源代码管理

r - 如何合并 column1 是 column2 的子字符串的数据框

java - 当 git 与另一个分支 merge 时,java 文件中缺少一些变量声明

visual-studio - visual studio 2017 搜索 tfs 变更集评论

version-control - 从 TFS 中 check out 在 VS 之外修改的文件

amazon-web-services - TFS 和 AWS 之间的持续部署