Spostamento di più file nel controllo del codice sorgente TFS


172

Sto utilizzando Team Foundation Server 2008 (SP 1) e devo spostare più file da una cartella all'altra (per conservare la cronologia dei file). Oltre a Team Explorer (con SP 1) ho installato anche l'ultimo Power Tools TFS (ottobre 2008) (per l'integrazione della shell di Windows).

Ora, il problema è che non riesco a selezionare e spostare più file tramite la shell o la finestra Explorer controllo sorgente. Posso spostare singoli file (facendo clic con il pulsante destro del mouse + "Sposta") e posso spostare intere cartelle (stessa operazione) ma quando seleziono più file (in una cartella) l'elemento contestuale "Sposta" è disattivato / disabilitato.

Qualcuno sa se questo è possibile .. e se no .. perché no !?

Qualcuno può suggerire una soluzione alternativa che non è eccessivamente complicata?

Votare qui: https://connect.microsoft.com/VisualStudio/feedback/details/715041/support-moving-multiple-files-in-tfs-source-control-explorer e qui http: //visualstudio.uservoice. com / forum / 121579-visual-studio / suggerimenti / 2.271.540-allow-a-move-più-che-un-file-at-once-in-TFS-così

inserisci qui la descrizione dell'immagine

inserisci qui la descrizione dell'immagine

Risposte:


144

Utilizzare lo strumento tf.exe dalla riga di comando di Visual Studio: può gestire caratteri jolly:

tf.exe move <olditem> <newitem>

Esempio:

tf.exe move "$/My Project/V*" "$/My Project/Archive"

[EDIT] Come notato nei commenti: move è un alias per rinominare. Entrambi i comandi spostano la cronologia.


7
Quest'altra risposta è la migliore qui. Il moveparametro non è documentato e non sposta la cronologia, mentre il renameparametro dell'altra risposta è documentato e sposta anche la cronologia.
— Alex Angas,

12
Per la cronaca, sembra che in TFS 2010 il comando move esegua una ridenominazione che sposta la cronologia.
— John Bledsoe,

10
dalla guida di TF.EXE: è possibile utilizzare il comando rename o lo spostamento dell'alias per spostare un file o una cartella in una nuova posizione. quindi spostare e rinominare sono la stessa cosa esatta.
— Mickey Perlstein,

1
un'altra cosa, eseguirlo dal percorso mappato, usando la riga di comando per Visual Studio. altrimenti è calmo non conoscere lo spazio peggiore e ti offre un modo (inutile) per scoprire quali spazi di lavoro hai (e poi cosa ??? ..) quindi eseguilo dalla directory mappata, e starai bene (lavorato per io)
— Mickey Perlstein

Funziona anche con percorsi relativi. cdnella cartella in cui si desidera spostare i file e dire tf move V* Archive.
— nalply

56

Usa rinominare invece di spostare

tf.exe rename "$/PROJECT/SharedLibs/Log4Net/*.*" "$/PROJECT/SharedLibs/3rdParty/"
tf.exe rename "$/PROJECT/SharedLibs/ZipLib/*.*" "$/PROJECT/SharedLibs/3rdParty/"

Dai un'occhiata alla documentazione di aiuto: Riferimento della riga di comando TFS


Il link sopra sta generando un HTTP500; nel caso in cui resta giù, ecco il riferimento della riga di comando TFS da MSDN: msdn.microsoft.com/en-us/library/z51z7zy0.aspx
— Joisey Mike

12
moveè solo un alias rename, quindi non importa quale usi
— Jeff Olson,

Uso il controllo del codice sorgente TFS di Visual Studio Online, ad esempio namgivu.visualstudio.com . E elencare l'area di lavoro chiamando tf workspacesnon ha la voce per il mio repository mapping.
— Nam G VU

"Impossibile rinominare $ / X / Y / Z quando gli è stata assegnata una mappatura di cartelle di lavoro." Anche; I caratteri jolly *. * Non sono più consentiti.
— Christian,

"Non è possibile specificare un carattere jolly come origine se la destinazione non è una cartella nel controllo del codice sorgente." Non so cosa significhi. Basta spostarlo sul nome che sto indicando.
— Christian,

39

Holan Jan ha scritto un'estensione di Visual Studio che fornisce 'sposta' per più file all'interno di Explorer controllo del codice sorgente (ovvero utilizzando una GUI) Funziona a meraviglia, ha anche il supporto per le versioni recenti.

per VS2019: https://marketplace.visualstudio.com/items?itemName=HolanJan.TFSSourceControlExplorerExtension-2019

per VS2017: https://marketplace.visualstudio.com/items?itemName=HolanJan.TFSSourceControlExplorerExtension-18397

per VS2015: https://marketplace.visualstudio.com/items?itemName=HolanJan.TFSSourceControlExplorerExtension-13343

per VS2013: https://marketplace.visualstudio.com/items?itemName=HolanJan.TFSSourceControlExplorerExtension-11508

per VS2012: https://marketplace.visualstudio.com/items?itemName=HolanJan.TFSSourceControlExplorerExtension-8896

Sotto il cofano usa gli stessi comandi sopra menzionati ma è solo un po 'più facile da usare. Ciascuna delle versioni elencate richiede la versione RTM di Visual Studio.


Eccellente! Questa è l'unica cosa che ha funzionato per me, usando VS2010: visualstudiogallery.msdn.microsoft.com/…
— Ian Campbell

Questa estensione è fantastica: abilita tutta una serie di funzionalità aggiuntive nell'esploratore di controllo del codice sorgente, di cui spostare più file contemporaneamente è solo un pezzo. Lo consiglio vivamente.
— SqlRyan,

Questa è la risposta Grazie!
— Frank Silano

-9

Attacca tutti i file che desideri spostare, sotto una cartella, quindi sposta quella cartella.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.