Cancellare definitivamente file dal source control di TFS

Attenzione: questa procedura cancella DE-FI-NI-TI-VA-MEN-TE i dati dal vostro source control

Se avete letto il mio post sul come recuperare un progetto cancellato per errore da TFS avete chiaro il concetto che di base cancellare i file da un source control e poi fare check-in, non effettua una cancellazione realmente fisica dal Source Control di TFS.

A questo punto sorge spontanea la domanda, come faccio ad eseguire una cancellazione definitiva di un file nel source control? Le necessità di dovere effettuare questa operazione sono molte, qualcuno ha fatto check-in di un file contenente una password sensibile e deve essere quindi eliminato totalmente, qualcuno ha fatto check-in di un file eseguibile con un virus, oppure si sono inserite in una cartella molti file grandi, e per alleggerire il db dove sono i sorgenti, vorremmo tenere solamente l’ultima versione del file, oppure magari non sono più necessari e vogliamo realmente rimuoverli.

Un caso pratico è: ho molte build fatte in TFService, ed il risultato delle build è stato messo nel source control, dentro la cartella Drops ed io voglio cancellarlo.

Il comando per cancellare definitivamente dal source contorl è il tf destroy, da usare con estrema cautela. Un esempio di uso è questo


C:\develop\Codeplex\Experiments>tf destroy “$/experiments/drops/First Build Test ”

Do you want to destroy $/experiments/drops/First Build Test and all of its children? (Yes/No) Yes

Quello che voglio è cancellare tutte le drops della First Build Test nel mio account di TFService, una volta terminato il comando non avrò più traccia nel source control di quella specifica cartella.

Questo comando possiede molte opzioni interessanti, la /keephistory permette ad esempio di preservare la history, quindi il file fisicamente non è più presente, ma rimane traccia della sua passata presenza nel source control.

Non è sicuramente un comando da usare tutti i giorni, ma è bene tenerlo a mente perchè potrebbe servire.

Gian Maria

One Response to Cancellare definitivamente file dal source control di TFS

  1.