Y a-t-il un moyen d'obtenir une version de la dernière modification de manière programmatique en général.
Il est assez facile d'obtenir un identifiant de modifications pour certains fichiers: p> puis appelez getItems ou QueryHistoire, mais j'aimerais savoir quel était le dernier numéro de checkin. P> p>
3 Réponses :
J'utilise la commande TF suivante pour ce après exécution, je analysais la sortie de cette commande pour obtenir le numéro de modification p> ceci Comment j'exécute la commande p> pas de manière efficace, mais toujours une solution qui fonctionne dans TFS 2008, espérons que cela aide. P> P>
Vous pouvez le faire comme ceci:
var latestChangesetId = vcs.QueryHistory( "$/", VersionSpec.Latest, 0, RecursionType.Full, String.Empty, VersionSpec.Latest, VersionSpec.Latest, 1, false, true) .Cast<Changeset>() .Single() .ChangesetId;
Il semble que VersionControlServer ait également une méthode GetLatestChangeDetide. C'est beaucoup plus court :-)
Pouvons-nous transmettre le nom d'utilisateur et pwd pour la connexion TFS var tfs = tfsteamprojectCollectionFactory.getteamProjectCollection (nouveau URI (TFSServer)); tfs.connect (ConnectOcctions.none); Code> BCoz après le déploiement de mes pages Web sur IIS Server I m Impossible d'obtenir les détails TFS mais pour localhost, je suis capable d'obtenir les détails TFS pour les mêmes pages Web. im obtenue ci-dessous ERR Microsoft.teamfoundation.teamfoundationsServerunauthorizedExc Eption: TF30063: Vous n'êtes pas autorisé à accéder à TFSSERVER: 8080 / TFS / mycollection . sur microsoft.teamfoundation.client.tfsconnection.throwauthoriza TionException (sauf ion e)
@ Picnic4u a probablement la meilleure question à cette question.
@DAVESHAW - J'ai essayé ci-dessous de travailler parfaitement .... NetworkCrDential Credit = Nouveau NetworkCredential ("Nom d'utilisateur", "Mot de passe", "Nom de la Domaine"); var tfs = nouveau TeamFoundationerver (" TFSSERVER: 8080 / TFS / Mycollection ", CRED); tfs.ensureAuthentifié ();
Comment le faites-vous pour un projet ou un dossier spécifique? J'ai changé "$ /" à "$ / myProject1" et cela a fonctionné, mais si je le change de "$ / myProject2", cela ne l'a pas fait, il a dit qu'il n'y avait pas d'articles dans la collection. En fait, cela ne fonctionne que sur le projet avec la dernière modification de celui-ci. Comment spécifiez-vous une gamme en plus de "Dernières récentes"?
J'ai pu faire ce travail (et il est étonnamment performant, même dans des projets qui ont plusieurs milliers de modifications): console.writeline (vcs.queryhistory ("$ / projet1 /", VersionsPec.laTest, 0, RécursionType.ful, NULL, NULL, VERSIONSPEC.LATEST, INT32.MAXVALUE, FALSE, VRAI) .CLAST
Utilisez (dans le SDK Java TFS, il est versionControlServer.getlatestChangeSetide code >
pour obtenir le dernier ID de modifications, comme indiqué par l'utilisateur tbaskan em> dans les commentaires. p>
VersionControlClient.getlatestChangeSettiD CODE>) SUB> P>