Un’altra interessante estensione presente nei Power Tools è il comando tfpt.exe, un’utility a linea di comando che permette di effettuare alcune operazioni non permesse dalla normale IDE di TFS. L’utilità di avere alcune funzionalità a linea di comando è eccezionale per scriptare alcune operazioni, ma il tfpt.exe contiene anche qualche comando unico che non è disponibile nemmeno dall’interfaccia grafica (GUI).
Ad esempio i comandi addprojectportal e addprojectreports permettono di aggiungere (o resettare alle impostazioni di default) la parte di sharepoint e di report per un team project. Questa funzionalità è interessantissima ad esempio se state upgradando dalla versione basic alla full.
Non voglio dare una lista completa di tutti i comandi presenti in tfpt.exe e vi invito a controllare l’help installato con i power tools, ma in questo post voglio darvi giusto la lista dei comandi più interessanti. Il comando bind permette ad esempio per chi passa da VSS a TFS di modificare automaticamente i file .sln ridirezionando il binding a Team Foundation SErver e può essere interessante per chi deve migrare team grandi da VSS a TFS per creare un file bat che permette a tutti gli sviluppatori di puntare al nuovo TFS facilmente.
Il comando online permette invece di tornare online dopo un periodo di lavoro offline e di verificare quali file sono stati realmente editati per poi propagare le corrispettive modifiche al server. Il comando treeclean invece serve per fare una scansione di tutti i file che correntemente non sono sotto il source control per rimuoverli dal disco. Questo comando che sembra a prima vista inutile, può essere ad esempio utile quando volete zippare una solution per inviarla via mail o ftp, grazie a questo comando infatti tutto ciò che non è sotto codice sorgente viene eliminato, riducendo il file zip.
Infine il comando scorch, uno dei miei preferiti perchè permette di aggiornare il workspace con la versione del server in caso di anomalie, questo è il suo help completo
tfpt scorch - Ensure source control and the local disk are identical
Your local disk will be scanned for:
(1) items that are not in source control
(2) items which are different on disk from the workspace version
(3) items which are in the workspace but are missing on disk
Items not in source control will be deleted from disk, just as with the
tfpt treeclean command. Items determined to be different on disk from the
workspace version will be redownloaded from the server. Items missing on
disk will also be redownloaded. Items with pending changes are exempted.
By default, items deleted from your local disk (#3 above) will not be
scanned for, and local items are determined to be identical/different from
the workspace version *solely by examining the read-only bit on the file*.
To redownload items deleted from your local disk (#3 above), supply the
/deletes option. To detect items which are different from the workspace
version but still have their read-only bit set (+R), supply the /diff option.
When using either or both of these options, tfpt scorch runs more slowly.
Grazie al comando scorch è quindi possibile andare a resettare il workspace con la versione del server cancellando i file che non sono nel source control, riscaricando quelli erroneamente cancellati (bisogna indicare la /deletes esplicitamente) e verificando quelli differenti.
alk.