- [Step by Step] Come cancellare i file *solo* dal disco locale con TFS
-
Team Foundation Server ha, a differenza di altri strumenti di Version Control, il concetto di Workspace (area di lavoro), ovvero il mapping fra una o più cartelle sul Server con una o più cartelle sul client (in verità anche singoli file…) che consente di gestire una serie di operazioni tra cui la get latest “intelligente”, la rimozione dei file che sono stati cancellati dal server durante la get, etc…
La maggior parte delle “incomprensioni” o dei problemi nell’uso di TFS riguarda proprio la non conoscenza del funzionamento dei Workspace.
Una delle domande che mi è stata rivolta durante l’ALM Day è stata: “come faccio a cancellare dei file localmente, senza rimuoverli dal TFS, e senza che il Workspace resti disallineato?”.
La risposta è molto semplice se si conosce il funzionamento dei Workspace e il concetto di Changeset (insiemi di modifiche). Normalmente se si cancella un file da Windows Explorer, il TFS non sa che il file è stato cancellato, per cui ad una operazione di Get Latest Version non recupererà il file. Per recuperarlo bisognerà fare una Get Specific Version dell’ultima versione specificando l’opzione “Force Get”. Se invece si cancella un file dal Team Explorer, questo verrà rimosso dal Server e da tutti i client alla successiva operazione di Get.
Come fare quindi a cancellare un file o una cartella senza rimuoverli dal TFS e senza perdere l’allineamento?
E’ molto semplice, basta fare una Get Specific Version del Changeset #1.
Il Changeset #1 è quello che viene creato durante il setup di TFS (guardando la data e l’ora del Changeset #1 è possibile determinare la data di installazione del server…) ed è vuoto, in quanto contiene solo la root del Version Control.

Facendo una Get del Changeset #1 di un singolo file o di una cartella, questi verranno “rimossi” dal disco locale, visto che non erano presenti alla creazione del TFS. Il loro stato da nero diventerà grigio e i file saranno “Not Downloaded”.
Maggiori informazioni possono essere trovate sul blog di Martin Woodward.
Lorenzo
- [Steb by Step] Come passare cambiare edizione di TFS
-
E’ possibile passare dalla versione Trial alla Workgroup o alla Standard, e dalla versione Workgroup alla Standard.
Se si passa dalla Trial alla Standard è sufficiente andare nel pannello di controllo, vedere la lista delle applicazioni installate, selezionare il TFS e modificare l’installazione.
A quel punto una delle voci permette di inserire la chiave della versione Standard, e il sistema viene automaticamente sbloccato, senza dover utilizzare il CD di installazione ma solo la chiave del prodotto.
Se si passa invece dalla Trial alla Workgroup o dalla Workgroup alla Standard oltre a inserire/cambiare la chiave del prodotto, bisogna anche effettuare la riparazione di TFS (utilizzando a quel punto il CD di installazione) perchè la Workgroup ha un gruppo di Windows che contiene i cinque utenti a cui è permesso accedere al server, e questo gruppo va aggiunto/rimosso dal programma di installazione.
Maggiori informazioni potete trovarle su MSDN.
Per sapere quale versione di Team Foundation Server avete installato, e nel caso della versione Trial per sapere quanti giorni mancano alla scadenza potete utilizzare questa utility scritta da Brian Harry. Tramite questa utility è anche possibile estendere di 30 giorni il periodo di prova. Se fosse necessaria una seconda estensione di altri 30 giorni è necessario un Trial ID che verrà fornito a chi ha una valida motivazione.
Lorenzo
- Riprendono i lavori su TFS Admin Tool su CodePlex
-
Dopo un anno di inattività riprendono i lavori su TFS Admin Tool, con l’uscita della Beta della versione 1.4, che dovrebbe poi essere rilasciata a giorni, e la pianificazione delle versioni 1.5 e 2.0.
Primo punto in agenda è il supporto di SQL Server 2008.
Vi ricordo che il tool serve per gestire in un unico punto gli utenti di TFS, di WSS e dei Reporting Services, in modo da avere un unico punto di gestione.
Lorenzo
- Intervista a Ivar Jacobson
-
Settimana scorsa durante l’evento “Soluzioni per la gestione e l’ottimizzazione delle Software Factory” al termine della presentazione Ivar Jacobson (papà di UML e UP, degli Use Case, etc…) ha parlato con Francesca (PM italiano di Visual Studio ed Expression) del fatto che non basta essere Agili, bisogna essere Smart…
Vi consiglio vivamente di ascoltare Ivar, perchè ha veramente un sacco di cose interessanti da dire!!!
Fonte: Things should be done as simple as possible – but no simpler. This is Smart!
Lorenzo
- Rilasciata una libreria di oggetti Mock per Team Foundation Server
-
Su CodePlex è stato pubblicato un progetto, creato da alcuni MVP di Team System, chiamato Team Foundation Adapters che fornisce una libreria iniziale di oggetti Mock per TFS assieme ad alcuni Unit Test di esempio.
La libreria non è completa, mancano alcune classi, ma piano piano verrà migliorata. La partecipazione al progetto è libera, per cui se vi servono dei Mock per delle classi non ancora implementate potreste aiutare il team ad ampliare la libreria.
Gli oggetti Mock servono generalmente per creare degli Unit Test che non dipendono dall’implementazione vera degli oggetti sotto test, in questo caso oggetti che fanno riferimento ad un server esterno che potrebbe non essere sempre disponibile, e servono per “isolare” i test e renderli veramente unitari.
Di solito si usano degli strumenti appositi per creare degli oggetti Mock al volo (NMock, Rhino Mock, etc…), ma le classi di TFS sono quasi tutte (tranne quelle di TFS Build che sono facilmente “mock-abili”
) sealed e senza interfacce, per cui non è possibile usarli direttamente.
Lorenzo
- Microsoft Process Template
-
A fine febbraio è stato rilasciato su CodePlex il Microsoft Process Template.
E’ la versione “ripulita” e “sistemata” del template che usa il team di Visual Studio Team System ed è stato prodotto dal team Engineering Excellence e dal team di VSTS.
E’ usato internamente in Microsoft al posto di MSF (Agile e CMMI,“volutamente” più generici e “didattici”) perchè più collegato al modo di lavorare dei team.
Contiene Work Item, Query, Report e Process Guidance, oltre a due documenti Word che mostrano come installarlo e come usarlo.
I Work Item sono di sei tipi, come mostrato in figura:
La piramide indica anche il “numero relativo” di Work Item, a fronte di poche Value Proposition ci saranno tanti Task (e si spera pochi Bug…
).
La piramide rappresenta anche il rapporto gerarchico fra i Work Item. Non è possibile creare un Task o un Bug che non abbiano un Deliverable collegato, e così via.
Il tutto funziona su TFS 2008 ed è implementato tramite delle Global List e tramite un Daemon che rimane in ascolto degli eventi di TFS e che “aggiorna” le liste ogni volta che un WI “padre” viene creato.
Oltre alle gerarchie anche le informazioni sulle Date di inizio e fine e sul Lavoro completato e rimanente vengono automaticamente popolate dai task alle deliverable fino alle feature, in automatico.
La cosa più bella del template sono i report predefiniti, che consentono un controllo “end-to-end” del processo:
Maggiori informazioni su come la Developer Division usa TFS ed in particolare questo Process Template possono essere trovate qui:
Vi consiglio di scaricare questo template ed approfondire il suo funzionamento, per comprendere meglio come customizzare TFS ed eventualmente per sfruttarlo al meglio all’interno dei vostri progetti.
Prima di cominciare conviene leggere la guida Getting Started che contiene le istruzioni per installare e configurare i Daemon, e l’introduzione al processo, che mostra come cominciare ad usarlo e indica anche come superare alcuni ostacoli iniziali.
Lorenzo
- [Step by Step] Come creare un Process Template di TFS senza la parte di Sharepoint
-
Ho ricevuto alcune richieste (relative al post sulla rimozione dei nodi dal Team Explorer) su come rimuovere la creazione del sito Sharepoint legato a TFS. Vediamo un esempio di modifica di MSF for Agile Software Development.
Prima di tutto bisogna selezionare il Process Template Manager e scaricare il processo in locale (tasto Download):
A quel punto si può aprire il file “ProcessTemplate.xml” e rimuovere la linea che invoca il plug-in di creazione del sito Sharepoint:
Si può poi rimuovere il gruppo relativo al portale, ed ogni riferimento nelle dependency di altri gruppi:
Si può poi cancellare la cartella con tutti i file che andavano messi su Sharepoint (Windows Sharepoint Services) e bisogna rinominare la cartella contenente il Process Template:
A questo punto dal Process Template Manager si può fare l’upload sul server del nuovo template, ed utilizzarlo per creare nuovi progetti:
Lo stesso suggerimento può essere utilizzato per non far creare altre parti del Team Project, come il sito contenente i Report.
Maggiori informazioni sui Plug-in per il Process Template possono essere trovate su MSDN.
E’ possibile anche utilizzare il Process Editor installato con i Power Tools di Team Foundation Server per editare il file ProcessTemplate.xml, ma non è possibile modificare l’elenco dei plug-in:
E’ anche possibile creare nuovi plug-in custom, bisogna però essere VSIP. Un esempio si trova nel Visual Studio SDK.
Lorenzo
- [Step by Step] Come rimuovere i nodi dai progetti del Team Explorer
-
In questo post vediamo come è possibile rimuovere un nodo dai progetti mostrati nel Team Explorer.
Supponiamo ad esempio di aver customizzato il nostro Process Template rimuovendo interamente la creazione del portale di progetto sotto Sharepoint, ci ritroveremmo ad avere il nodo Documents (o Documenti) con una X rossa:
E’ possibile rimuovere interamente un nodo del Team Explorer modificando la relativa chiave di registry:
Bisogna selezionare il ramo:
[HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\9.0\TeamSystemPlugins\Team Explorer Project Plugins]
e poi entrare nella funzionalità che si vuole abilitare/disabilitare ed impostare Enabled a 0.
A quel punto il nodo non verrà più mostrato:
Attenzione: modificare il Registry comporta il rischio di compromettere il funzionamento del proprio computer, e quindi bisogna procedere con l’opportuna cautela, effettuando in ogni caso un back-up del Registry stesso prima delle modifiche (ad esempio seguendo questa guida).
La modifica renderà invisibile il nodo in tutti i Team Project, per tutti gli utenti della macchina, non è possibile filtrare la disabilitazione per singolo Team Project.
Lorenzo
P.s. volevo ringraziare Marcel per l’ispirazione per questo post.
- Disponibile la nuova versione di Team System Web Access 2008 SP1
-

Il 16 Gennaio 2009 è stata rilasciata su Microsoft Downloads una nuova versione di Visual Studio Team System Web Access 2008 Service Pack 1, il tool che permette di accedere a Team Foundation Server utilizzando un browser, per gestire Work Item, accedere ai Documenti, vedere i Sorgenti, le Build e i Report.
Questa versione corregge un’importante security issue, e va assolutamente installata al posto della versione precedente. Il download contiene l’intero pacchetto di setup, e richiede solamente la presenza del Team Explorer per essere installato.
Per verificare se sul server è installata la versione SP1 con l'update bisogna andare nel menu e verificare che la versione sia 9.0.3275 (o superiore).
Maggiori informazioni sull'articolo di Knowledge Base e sul blog di Hakan Eskici (in inglese).
Lorenzo
- [Step by Step] Utilizzo di Team Foundation Server con Microfocus MainFrame Express e Net Express
-
In questo post vediamo com’è possibile collegarsi a Team Foundation Server con i prodotti Microfocus MainFrame Express e Net Express utilizzando il Team Foundation Server MSSCCI Provider (Microsoft Source Code Control Interface).
Selezione e installazione del Provider MSSCCI
Il provider MSSCCI per TFS richiede la presenza del Team Explorer sulla macchina client per poter funzionare.
Se si dispone del Team Explorer 2005 bisogna installare il TFS MSSCCI 1.2. Questa versione non è più stata aggiornata a partire da Settembre 2007, ed è disponibile solo per chi non può installare il Team Explorer 2008.
Se si dispone del Team Explorer 2008 bisogna installare il TFS MSSCCI 2.0 (o eventuali versioni successive).
Vi ricordo che l’installazione del Team Explorer installa (se non è già presente) una versione “light” di Visual Studio (2005 o 2008) e ci si “installa dentro”. Viene anche installato il Framework .NET corrispondente (2.0 o 3.5).
Al termine dell’installazione del Team Explorer bisogna installare la Service Pack di Visual Studio Team Suite (che include anche quella del Team Explorer) corrispondente alla versione del Team Explorer installata (2005 o 2008).
Preparazione degli ambienti di lavoro
Il provider MSSCCI per TFS richiede una serie di “customizzazioni” per essere utilizzato efficacemente assieme ai prodotti MicroFocus. La prima impostazione è relativa alla creazione di una chiave di registry per il funzionamento con Net Express:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\
Team Foundation Server MSSCCI Provider\Settings\Net Express]
“issues”=dword:000000e6
Per quanto riguarda MainFrame Express bisogna andare a impostare un’opzione all’interno del Source Control:
E più precisamente bisogna disabilitare l’utilizzo del multi-threading nell’accesso al provider MSSCCI:
A questo punto in entrambi i prodotti dovrebbe essere disponibile il menu Source Control impostato su Team Foundation Server:
Se sul computer sono presenti altri provider (ad esempio Visual SourceSafe) e il provider ti TFS non è quello impostato di default, bisogna andare nel registry a cambiare il provider di default, oppure utilizzare un tool che semplifica l’operazione, come, ad esempio, SccSwitch.
Utilizzo del provider MSSCCI
La prima cosa da fare (valida in entrambi gli ambienti) è quella di selezionare “Connect Project to Source Control”:
A questo punto verrà selezionato il TFS di riferimento:
E il progetto sarà “collegato”. A questo punto tutte le funzionalità del menu Source Control saranno disponibili (in funzione del file selezionato):
E sarà anche possibile accedere al menu contestuale sui vari file, ad esempio per aggiungerli a TFS:

In questo caso apparirà la classica dialog dell’ambiente di sviluppo:
E poi quella del provider MSSCCI di TFS, con tutte le funzionalità estese, come integrazione con i Work Item, le Check In Notes e le Policy:
Come si può vedere l’integrazione è presente anche tra le colonne riguardanti i file di progetto sia in MainFrame Express:
Sia in Net Express:
Sui file è poi possibile effettuare le operazioni più classiche, come ad esempio il Check Out, che viene subito mostrato nell’ambiente di sviluppo:
O il Check In, che prevede la prima dialog dell’ambiente, seguita poi da quella di TFS (non mostrata):
Funzionalità avanzate
Dal menu Source Control è possibile accedere ad altre funzionalità che non sono presenti nei menu contestuali:
E’ possibile vedere la storia di un file:

Dalla dialog è poi possibile vedere il dettaglio del Changeset relativo al Check In, confrontare due versioni differenti, vedere la versione selezionata o scaricarla sulla macchina al posto di quella in uso.
Dal menu Source Control è possibile inoltre effettuare il confronto con altre versioni di un file:
O vederne le proprietà:
Se si devono fare operazioni più complesse, è possibile selezionare “Team Foundation” che lancerà il Team Explorer all’interno di Visual Studio (2005 o 2008).
Supporto
Il provider è supportato dal team di Team Foundation Server tramite il Forum MSDN o una mail dedicata:
Altre informazioni
In questo post è possibile vedere come usare il provider MSSCCI con Visual Basic 6.0 e in questo articolo è possibile vedere come utilizzarlo con Visual Studio.NET 2003.
Appendice: MicroFocus Net Express with .NET
Questo post si applica a MainFrame Express e Net Express in versione normale.
Net Express with .NET è completamente integrato in Visual Studio 2008 e quindi sfrutta completamente il Team Explorer.
L’integrazione è totale, incluse le funzionalità di Team Build, debug, editing, etc…

Lorenzo
- Microsoft® Visual Studio Team System 2008 Database Edition GDR Release Candidate 1
-
Questa versione ha le stesse funzionalità della CTP di Settembre, ma contiene numerosi miglioramenti e correzioni di Bug.
Il formato dei progetti è quello finale, e non dovrebbero esserci modifiche tra questa e la versione finale. Questa versione può essere quindi usata per iniziare a migrare i Database Project fatti con VS2005 DB Pro o con VS2008 Database Edition.
La trovate qui (in Inglese): Microsoft® Visual Studio Team System 2008 Database Edition GDR Release Candidate 1
Vi consiglio di rimuovere prima le eventuali CTP se installate e vi ricordo che questa versione richiede la SP1 di Visual Studio.
Technorati Tags:
Database Lorenzo
- Disponibili le CTP di Visual Studio 2010 e del .NET Framework 4.0
-
Direttamente dal Download Center sono disponibili già installati in una macchina virtuale pronta all’uso che include anche Windows Server 2008, SQL Server e Team Foundation Server 2010 CTP. Il tutto in Inglese.
Microsoft Visual Studio 2010 and the .NET Framework 4.0 are the next generation development tools and platform for Windows Vista, the 2007 Office System, and the Web.

Fonte: Visual Studio 2010 and .NET Framework 4.0 CTP
Technorati Tags:
VSTS2010 Lorenzo
- Data Dude è morto… Viva Data Dude!!!
-
Data Dude è il “nome in codice” di Visual Studio Team System: Database Edition (e anche della “vecchia” Database Professional).
A seguito dell’annuncio della fusione tra la Development Edition e la Database Edition, sono arrivate molte domande sul futuro di Visual Studio Team System 2008: Database Edition.
Oltre a segnalare le FAQ ufficiali e quelle non ufficiali sull’annuncio (in inglese), è il caso di aggiungere due o tre note:
- La Database Edition rimane a listino, non viene ritirata, per cui è sempre possibile acquistarla.
- Se uno ha o compra la Development Edition o la Database Edition con MSDN Premium può scaricare gratuitamente l’altra versione.
- Non esiste un setup unico dei prodotti, bisogna installarli entrambi, il setup si occuperà di fonderli insieme. Se si era già applicato il SP1 al primo ambiente bisognerà riapplicarlo per aggiornare anche il secondo.
Lo sviluppo della Database Edition 2008 sta andando avanti per completare il supporto ufficiale a SQL Server 2008 e alla separazione del “plug-in” relativo alla versione del Database dal prodotto stesso. Nella versione RTM e nella versione SP1 il supporto di SQL Server 2000 e 2005 era integrato nella Database Edition.
Con l’uscita della versione GDR il supporto a SQL Server 2000, 2005 e 2008 diventerà un plug-in intercambiabile, aperto anche ad altri produttori di terze parti.
In questi giorni è uscita la Visual Studio Team System 2008 Database Edition GDR September CTP che pur non essendo una versione supportata in produzione (in quanto CTP senza licenza Go-Live) include il supporto completo a SQL Server 2008 e una serie di altre funzionalità aggiuntive descritte in questo post (in inglese).
Questa è l’ultima CTP del prodotto, la versione finale sarà disponibile tra qualche settimana, dopo l’uscita della versione RC (Release Candidate, che avrà comunque la licenza Go-Live).
Technorati Tags:
Database
Lorenzo
- [Steb by Step] Utilizzo di Team Foundation Server con Visual Basic 6.0
-
In questo post vediamo com’è possibile collegarsi a Team Foundation Server con Visual Basic 6.0 utilizzando il Team Foundation Server MSSCCI Provider (Microsoft Source Code Control Interface).
Selezione e installazione del Provider MSSCCI
Il provider MSSCCI per TFS richiede la presenza del Team Explorer sulla macchina client per poter funzionare.
Se si dispone del Team Explorer 2005 bisogna installare il TFS MSSCCI 1.2. Questa versione non è più stata aggiornata a partire da Settembre 2007, ed è disponibile solo per chi non può installare il Team Explorer 2008.
Se si dispone del Team Explorer 2008 bisogna installare il TFS MSSCCI 2.0 (o eventuali versioni successive).
Vi ricordo che l’installazione del Team Explorer installa (se non è già presente) una versione “light” di Visual Studio (2005 o 2008) e ci si “installa dentro”. Viene anche installato il Framework .NET corrispondente (2.0 o 3.5).
Preparazione dell’ambiente Visual Basic 6.0
Per poter utilizzare il provider MSSCCI con TFS bisogna PRIMA installare (se non l’avevate già) la parte client di Visual SourceSafe 6.0 dentro Visual Basic 6.0:
Se si installa la parte client di VSS il menù tools di VB6 non mostrerà la parte di integrazione con il Source Control:

Se pur avendo installato il MSSCCI per TFS si ritrova ancora l’integrazione con VSS:

Bisogna andare nel registry a cambiare il provider di default, oppure utilizzare un tool che semplifica l’operazione, come, ad esempio, SccSwitch. Una volta cambiato il provider di default, Team Foundation Server sarà accessibile direttamente da Visual Basic 6.0.
Utilizzo del provider MSSCCI
Il provider MSSCCI per TFS funziona in maniera molto simile a quello per VSS, ma si differenzia poi nelle feature specifiche di TFS. Ad esempio è possibile aggiungere un progetto a TFS utilizzando il menu:

Il sistema richiederà (se non era già configurato) di configurare la connessione a TFS:

E poi richiederà di scegliere il Team Project (o la sottocartella di un Team Project) ed il Workspace da utilizzare:

A questo punto verrà gestità l’operazione di Add, prima tramite la dialog standard di VB6, e poi con quella più completa di TFS che farà il Check In dei file permettendo anche di selezionare i Work Item collegati, le Note di Check In e di verificare che non si stia violando le Policy:

Una volta aggiunto il progetto a TFS la gestione dei Check In e Check Out è identica a quella di VSS:

Se si esegue il Check Out di un file (anche in automatico durante l’editing del file) e poi si seleziona il Check In, si aprirà prima la Dialog standard di VB6 (in cui ad esempio è possibile selezionare i file e i commenti) e poi la Dialog di TFS, che manterrà le impostazioni precedentemente selezionate ma permetterà di aggiungere le altre informazioni. Il consiglio è quello di premere Ok nella prima Dialog e prendere l’abitudine di lavorare solo nella seconda, per non “perdere dei pezzi”:

Funzionalità avanzate
Dal menu Tools è possibile accedere ad altre funzionalità che non sono presenti nei menu contestuali:

E’ possibile vedere le proprietà dei file:

Effettuarne il confronto con altre versioni:

E’ inoltre possibile vedere la storia dei file, o aggiungere altri file a TFS, il tutto senza lasciare l’ambiente di VB6.
Se si devono fare operazioni più complesse, è possibile selezionare “Run Team Foundation” che lancerà il Team Explorer all’interno di Visual Studio (2005 o 2008), così come in VSS veniva lanciato il SourceSafe Client.
Supporto
Il provider è pienamente supportato dal team di Team Foundation Server tramite il Forum MSDN o una mail dedicata:
La versione 2.0 del provider è supportata con questi ambienti di sviluppo:
- Visual Studio .NET 2003
- Visual C++ 6 SP6
- Visual Visual Basic 6 SP6
- Visual FoxPro 9 SP1
- Microsoft Access 2003 SP2
- SQL Server Management Studio
- Sparx Systems Enterprise Architect 6.1
- Sybase PowerBuilder 10.5
- Toad for SQL Server 2.0
Altre informazioni
In questo articolo in Italiano su MSDN trovate una serie di informazioni aggiuntive su come utilizzare TFS anche con Visual Studio.NET 2003, e su come migrare il codice da Visual SourceSafe a Team Foundation Server (la guida della procedura la trovate qui) e su come utilizzare la Team Build anche con codice VB6.
Lorenzo
- [Risorse] Visual Studio Team System 2008 Development Edition per sviluppatori C++
-
Ecco una serie di risorse per chi sviluppa con Visual C++ utilizzando la Development Edition di Visual Studio Team System:
- Unit Test con Code Coverage
- Application Verifier per codice nativo integrato nell’ambiente
- Profiler a 32 e 64 bit, managed e nativo
- Code Analysis codice nativo
- Integrazione con Team Foundation Server
- E’ possibile creare Bug o altri Work Item dagli errori degli Unit Test, Code Analysis, etc…
- E’ possibile eseguire la Code Analysis e gli Unit Test con Code Coverage di codice nativo con Team Build
- E’ possibile usare la Code Analysis Check In Policy anche per codice nativo
Lorenzo