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.