.net - teamfoundationserver - ¿Cómo obtener el historial del control de fuente en la API de TFS?
microsoft teamfoundationserver extendedclient (2)
Soy nuevo usando la API TFS, estoy escribiendo una aplicación que borra los proyectos de mi equipo, pero antes de eliminar quiero saber la última vez que se fusionó, me refiero a la información que aparece en Source Control Explorer> "Proyecto de muestra"> ver el historial y ponerlo en un cuadro de texto.
También la información de la última vez que un usuario ingresó al proyecto.
(Supongo que te estás refiriendo a TFS 2012)
Hay un artículo en la revista de MSDN de 2013 que debería darle un punto de partida decente: http://msdn.microsoft.com/en-us/magazine/jj883959.aspx
Por cierto, si desea eliminar proyectos de equipo, le recomiendo encarecidamente que use TFSDeleteProject ( http://msdn.microsoft.com/en-us/library/ms181482.aspx ) ya que utilizará una herramienta compatible.
No sé cómo comprobar cuándo fue la última vez que un usuario se conectó al proyecto, pero cómo puede acceder al código de control de origen desde el código,
using Microsoft.TeamFoundation.Client;
using Microsoft.TeamFoundation.VersionControl.Client;
using System.Collections;
using System.Windows.Forms;
//The example function is very simple: It gets a change and shows message boxes of all the changesets that have a change for the specified file up to the change transferred to the method.
//Note: Change the [Server Name] with your TFS name.
public void GetChangesetsOfFile(Change theChange)
{
//Query History parameters
TeamFoundationServer tfs = new TeamFoundationServer
("[Server Name]");
VersionControlServer VCServer =
(VersionControlServer)tfs.GetService
(typeof(VersionControlServer));
int changeId = (theChange.Item.DeletionId != 0) ?
theChange.Item.ChangesetId - 1 :
theChange.Item.ChangesetId;
ChangesetVersionSpec version = new
ChangesetVersionSpec(changeId);
ChangesetVersionSpec versionFrom = new
ChangesetVersionSpec(1);
string path = theChange.Item.ServerItem;
//Query History Command
IEnumerable changesets = VCServer.QueryHistory(path,
version, 0, RecursionType.None, null,
versionFrom, LatestVersionSpec.Latest,
int.MaxValue, true, false);
foreach (Changeset cSet in changesets)
{
MessageBox.Show(cSet.Changes
[0].Item.ChangesetId.ToString());
}
}
Referencia