[Step by Step] Lavorare con Team Foundation Server in modalità Offline (2a parte)

Questo post è la seconda parte della serie che mostra come utilizzare Team Foundation Server in modalità Offline. La prima parte la trovate qui.

Alcune note sul comando Go Online di Visual Studio 2008

Quando si apre una soluzione collegata a Team Foundation Server con Visual Studio 2008 utilizzando la modalità Offline, tutte le soluzioni associate a quel Team Foundation Server vengono considerate in modalità Offline fino a quando non si utilizza il comando Go Online per ripristinare il collegamento.

Questo perché la modalità Offline per default si applica all’intero Team Foundation Server.

Per avere la possibilità di utilizzare la modalità Offline singolarmente per le varie soluzioni si deve modificare il Registry.

All’interno della chiave di registro:

[HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\9.0\TeamFoundation\SourceControl]

bisogna creare una stringa chiamata IgnoreServerBasedOfflineFlags e impostarla al valore “True”.

In questo modo ogni soluzione potrà essere aperta in modalità Online o Offline indipendentemente dalle altre soluzioni presenti sullo stesso Team Foundation Server.

Queste impostazioni possono essere modificate anche utilizzando il Power Tool “TweakUI”, come mostrato in Figura 17 e 18:

Figura 17

Figura 17

Figura 18

Figura 18

Maggiori informazioni sul Power Tool “TweakUI” le trovate in questo post in inglese.

Simulare il comando Go Online su Visual Studio 2005

E’ molto semplice “automatizzare” il Power Tool Online per simulare il comando Go Online di Visual Studio 2008 anche su Visual Studio 2005.

Dal menu Tools si seleziona External Tools, e poi si crea una nuova voce, come in Figura 19:

Figura 19

Figura 19

Il titolo può essere una stringa qualsiasi, “Go Online” in questo caso. Il comando è TFPT.EXE, e le opzioni sono quelle indicate in precedenza: online /deletes /exclude:Obj,Bin,*.CodeAnalysisLog.xml,*.lastcodeanalysissucceeded,*.suo,*.user,*.bak,*.temp,*.tmp

La cartella iniziale viene posta a $(SolutionDir) in modo che venga riconciliata l’intera soluzione.

Bisogna deselezionare “Use Output window”, perché la redirezione che questa opzione introduce comporta l’aggiunta implicita dell’opzione “/no prompt” da parte del Power Tool, che non farebbe apparire la schermata di conferma dei file da riconciliare. Bisogna inoltre deselezionare “Prompt for arguments” e selezionare “Close on exit”, per fare in modo che tutto funzioni.

Se si vogliono selezionare per default anche tutti i file aggiunti bisogna ricordarsi di specificare l’opzione /adds.

Bisogna inoltre ricordarsi di “ricollegarsi” al Team Foundation Server, perché altrimenti non si vedrà nulla nella finestra “Pending Changes”, ne nel Solution Explorer che dimostrerà l’avvenuta “riconciliazione” dei file modificati quando si era Offline.

Per lanciare il comando basta poi selezionarlo dal menu Tools, come in Figura 20:

Figura 20

Figura 20

Gestione Offline dei Work Item

Il Team Explorer non è in grado di gestire i Work Item quando non si è collegati a Team Foundation Server. Per poter gestire i Work Item quando non si è collegati bisogna utilizzare i plug-in per Microsoft Office Excel 2003/2007 o per Microsoft Office Project Professional 2003/2007.

Questi plug-in richiedono di collegarsi almeno una volta a Team Foundation Server per configurare il Team Project di riferimento del documento Excel o Project, e per scaricare l’insieme iniziale di Work Item (Figura 21).

Figura 21

Figura 21

In seguito basterà salvare il documento Excel o Project in locale e utilizzare le funzionalità “Publish” e “Refresh” della toolbar per collegarsi a Team Foundation Server e sincronizzare i Work Item (toolbar che viene installata assieme al Team Explorer).

Il plug-in permette di gestire l’inserimento di Work Item, la loro modifica e cancellazione, e in caso di modifiche effettuate mentre si era Offline a dati che nel frattempo sono cambiati, permette di scegliere quali dati tenere o se cambiare il Work Item (Figura 22).

Figura 22

Figura 22

Il plug-in richiede la presenza del supporto alla programmabilità .NET in Excel o Project, e, se si vogliono utilizzare le versioni 2007 degli strumenti Office bisogna utilizzare il Service Pack 1 del Team Explorer 2005 o il Team Explorer 2008.

Attenzione: non tutte le funzionalità dei plug-in per Excel o Project sono disponibili quando si è Offline. Ad esempio, non è possibile editare Aree ed Iterazioni dal menu Team (come da Figura 23), riconfigurare la Lista dei Work Item, ecc...

Figura 23

Figura 23

Fine seconda parte.

Lorenzo