Dans le cadre d'une implémentation plus importante, j'essaie d'implémenter une opération de fusion de mes branches/dossiers de contrôle source à l'aide de TFS-SDK. Je travaille contre une installation TFS2010.
Ce que j'est le suivant:
TFS-SDK: la fusion ne fonctionne pas
using System;
using Microsoft.TeamFoundation.Client;
using Microsoft.TeamFoundation.VersionControl.Client;
using Microsoft.TeamFoundation.VersionControl.Common;
namespace MergeBranchesFolders
{
class Program
{
static void Main()
{
TfsTeamProjectCollection teamProjectCollection = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(new Uri("http://TFSSERVER/Collection"));
var versionControl = teamProjectCollection.GetService<VersionControlServer>();
const string fromPath = "$/TeamProject/SourceDir";
const string toPath = "$/TeamProject/TargetDir";
Workspace myWorkspace = versionControl.GetWorkspace("WorkspaceName", "WorkspaceOwner");
GetStatus getStatus = myWorkspace.Merge(fromPath, toPath, VersionSpec.Latest, VersionSpec.Latest,
LockLevel.None, RecursionType.Full, MergeOptionsEx.None);
}
}
}
Je suis convaincu que je reçois un accès adéquat à myWorkspace
, mais le getStatus
ressemble à ceci:
Cela dit à peu près que rien est arrivé.
Pourtant, si j'essaie de fusionner dans l'EDI, j'obtiens plusieurs candidats de fusion.
Les mêmes candidats de fusion sont également visibles si je fais:
var mergeCandidates = versionControl.GetMergeCandidates(fromPath, toPath,RecursionType.Full).ToList();
J'échoué avec les deux fromPath
/toPath
étant des branches et des dossiers - même avec une seule file.
La seule ressource là-bas je pourrais trouver était this un, qui n'a pas aidé ...