我知道如何使用命令行命令“ 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/

10-11 15:22