2009-07-22 2 views
52

Uso il client Tortoise per effettuare il checkout/confermare le mie modifiche a SVN. Ma ho trovato questo poco difficile perché non sono in grado di trovare Elenco di tutti i file che vengono modificati nella mia copia locale. C'è qualche scorciatoia o qualcosa che ho trascurato?svn elenco di file modificati in copia locale

Sono nuovo di SVN. FYI.

risposta

25

Il comando "Verifica le modifiche" in tartaruga visualizza un elenco di tutti i file modificati nella copia di lavoro. "Commit" mostrerà anche tutti i file modificati (che puoi poi commettere). "Revert" mostrerà anche i file modificati (che puoi quindi ripristinare).

+0

Ah! Ho perso per provare "verificare le modifiche" –

+0

TIL Tortoise ha avuto una funzione di "verifica delle modifiche" :) Molte grazie. –

108

io non sono a conoscenza di tartaruga, ma con la sovversione a linux vorrei digitare

svn status 

un po 'googling mi dice che tartaruga supporta anche commandos a riga di comando, provare svn status nella cartella che contiene il repository svn.

+2

Io uso Windows Bro! –

+8

Il client della riga di comando di Windows ha lo stesso comando, quindi è possibile utilizzarlo se si sta utilizzando anche cmd. – DeadHead

+22

Per mostrare * solo * i file modificati nella directory: stato svn -q –

42

Impossibile ottenere svn status -q per funzionare. Dando per scontato che su una macchina Linux, per vedere solo i file che vengono modificati, esegue: svn status | grep 'M ' Su Windows non sono sicuro quello che si potrebbe fare, forse qualcosa con 'FINDSTR'

+23

'stato svn | grep '^ M'' funzionerebbe meglio. –

+11

'svn st | grep '^ M'' è più corto .. –

+9

'svn st | grep^M' è ancora più breve :) – kliteyn

2

questo dovrebbe farlo in Windows: svn stat | trova "M"

8

Sotto il comando verranno visualizzati i file modificati da solo in Windows.

svn status | findstr "^M" 
1

svn stato | grep^M elencherà i file che sono modificati. M - sta per modificata :)

0

cartella Fare clic destro -> Clicca Tortoise SVN -> Controlla per la modifica

6

Se davvero si vuole elencare file modificati solo è possibile ridurre l'output di svn st portando la "M" che indica che un file è stato modificato. Vorrei farlo così:

svn st | grep ^M 
2

Se desideri solo i nomi dei file e si desidera anche tutti i file che sono stati aggiunti (A).

svn st | grep ^[AM] | cut -c9- 

Nota: le prime 7 colonne sono ognuna di un carattere seguita da uno spazio, quindi il nome file.

4

svn status | grep 'M ' funziona correttamente su MacOSX.

Ho appena provato questo.

+0

Dalla riga di comando questa è la mia soluzione get-go. Ma l'OP ha chiesto una soluzione in TortoiseSVN. –

0

Come detto, è necessario utilizzare SVN Check for modification nella GUI e tortoiseproc.exe /command:repostatus /path:"<path-to-version-control-file-or-directory>" nella CLI per visualizzare le modifiche relative alla radice dello <path-to-version-control-file-or-directory>.

Purtroppo, ma questo comando non mostra TUTTE le modifiche locali, mostra solo le modifiche correlate alla directory root richiesta.Le modifiche apportate separatamente, come i checkout autonomi o le directory esterne orfane nella sottodirectory root, verranno mostrate come Unversioned o nidificato e potresti perdere l'impegno/cercarle.

Per evitare tale condizione bisogna o chiamare per tortoiseproc.exe /command:repostatus /pathfile:"<path-to-file-with-list-of-items-to-lookup-from>" (vedi documentazione dettagliata sulla riga di comando: https://tortoisesvn.net/docs/nightly/TortoiseSVN_en/tsvn-automation.html), o utilizzare alcuni 3dparty Applicazioni/Utility/script per avvolgere la chiamata.

I è stato scritto il mio serie di script per Windows per automatizzare la chiamata dal Total Commander: https://sf.net/p/contools/contools/HEAD/tree/trunk/Scripts/Tools/ToolAdaptors/totalcmd/README_EN.txt (ricerca di TortoiseSVN)

- apre la finestra di stato di TortoiseSVN per una serie di directory WC (si apre sempre per mostrare cambiamenti non verificati).

Command: call_nowindow.vbs 
Arguments: tortoisesvn\TortoiseProcByNestedWC.bat /command:repostatus "%P" %S 

- Apre TortoiseSVN commettere finestre di dialogo per una serie di directory WC (si apre solo se non è svuotare i cambiamenti di versione).

Command: call_nowindow.vbs 
Arguments: tortoisesvn\TortoiseProcByNestedWC.bat /command:commit "%P" %S 

Vedere la README_EN.txt per gli ultimi particolari (si deve eseguire il configure.bat prima che l'utilizzo e copiare resto di script su te stesso come call_nowindow.vbs).