Domanda

Attualmente stiamo utilizzando Visual Source Safe e Team Foundation Server al lavoro (VSS per progetti vecchi, TFS per progetti attuali o nuovi).

Abbiamo sempre usato le etichette nel controllo del codice sorgente per ogni build. In VSS se si sceglie di visualizzare una cronologia dei file, è possibile includere etichette. In TFS non riesco a trovare un'opzione per includere i lables nella finestra della cronologia.

Poiché una delle domande più comuni che mi vengono poste dal supporto o dalla direzione è "Quale versione abbiamo risolto / aggiunto / rimosso / modificato xxxx?", ho sempre fatto affidamento sulle nostre etichette di build che compaiono nella cronologia.

Posso visualizzare le etichette in una cronologia dei file?

È stato utile?

Soluzione

Nella versione 2008 di TFS, non vedi le etichette nella cronologia standard di file e cartelle. Se vuoi davvero sapere perché - vedi il post sul blog di Brian Harry " Perché le etichette TFS non sono come le etichette VSS " ;.

Per trovare le etichette in Visual Studio, vai su File, Controllo del codice sorgente, Etichetta, Trova etichetta ... Da qui puoi vedere quali versioni di file sono state incluse in quell'etichetta.

Il team ha sicuramente sentito che questo non è l'ideale, e la prossima versione di TFS (Team Foundation Server 2010, nome in codice "Rosario") includerà miglioramenti alla vista Cronologia per rendere le etichette più facili da trovare - vedi http://go.microsoft.com/?linkid=7807943 per le specifiche dei miglioramenti alla vista Cronologia in TFS 2010.

A proposito: in realtà sono passato alla numerazione build basata su changeset con TFS che rende meno necessaria l'etichettatura. Vedi http://www.woodwardweb.com/vsts/changeset_based.html per maggiori dettagli .

Spero che aiuti,

Martin.

Altri suggerimenti

Questo stesso problema ci sta uccidendo.

La migliore soluzione che ho trovato è l'uso di uno strumento di terze parti chiamato Team Foundation SideKicks disponibile gratuitamente qui http://www.attrice.info/cm/tfs/ .

Nella sezione "Storia sidekick" c'è una scheda etichetta. Puoi evidenziare qualsiasi cartella o file e ti mostrerà tutte le etichette che sono state rilasciate su quella cartella o file e su quale changeset. Purtroppo non è possibile visualizzare una vista completa di una cartella o della cronologia del file con etichette incluse.

Nella sezione "Etichetta Sidekick" puoi evidenziare qualsiasi etichetta specifica in esso può dirti quali cartelle / file e changeset sono nell'etichetta. Questa funzionalità è praticamente la stessa di quella disponibile in Visual Studio e non è altrettanto utile.

Un avvertimento è la necessità di un server TFS dal 2008 in poi. L'uso dello strumento con il server TFS 2005 è dolorosamente lento e sostanzialmente inutilizzabile.

-ephi

[a causa della complessità delle etichette in stile TFS questo è un problema abbastanza difficile quando applicato alle cartelle; sulla base di un commento sopra, suppongo che la ricerca di etichette in un file sia sufficiente]

Sfortunatamente questo è uno dei pochissimi casi limite dell'API del client TFS che non è esposto da nessuna parte in tf.exe o VS2008. Dovrai chiamare direttamente l'API. Si prega di consultare http://msdn.microsoft.com/en-us/library/ bb138967.aspx - il " versionFilterItem " Il parametro fa quello che stai cercando.

TFS 2010 ha un'utilissima "etichetta" visualizzare (anziché "quotazioni") nella cronologia di qualsiasi filiale. Sfortunatamente, mostra solo le etichette nel ramo che hai scelto, piuttosto che le etichette in tutti i rami / cartelle secondari.

Ho iniziato a giocare cercando di creare il mio SQL per farlo ed eseguirlo direttamente contro il / i database TFS stesso. Questo SQL è stato eseguito su TFS 2008. Questo piccolo frammento mostrerà TUTTE le etichette e i changeset per TUTTI i rami ordinati con la filiale / etichetta modificata creata più di recente per prima. Il prossimo passo nello sviluppo di questo sarebbe in qualche modo attraversare i changeset e le etichette per riportare solo le aree che mi interessano (come 'Main' o qualche ramo particolare). Immagino che se avessi creato un SQL che avrebbe fatto tutto questo, sarebbe stato un cane lento e non avrei la GUI completa che avrei voluto immergermi nella storia per un determinato file, vedere le etichette con quello, ecc. Sigh.

select DisplayName, cs.CreationDate, Comment, 'CheckIn' 
from TfsVersionControl.dbo.tbl_Identity i, TfsVersionControl.dbo.tbl_ChangeSet cs 
where cs.ownerid = i.IdentityId
union
select DisplayName, LastModified, Comment, 'Label' 
from TfsVersionControl.dbo.tbl_Identity i, TfsVersionControl.dbo.tbl_Label l 
where l.ownerid = i.IdentityId
order by 2 desc

In precedenza ho usato la cronologia delle filiali TFS prima. Non è la più grande interfaccia utente al mondo e ti consente solo di mostrare la cronologia per file, ma ottiene il lavoro fatto.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top