Quando uso "svn diff" dalla riga di comando, stampa le righe che sono cambiate, ma anche le 3 linee invariate prima e dopo per il contesto. Preferisco di gran lunga vedere solo le linee modificate senza contesto. Non sono stato in grado di determinare le opzioni della riga di comando che mi consentiranno di farlo funzionare in questo modo. Standard 'diff' e 'cvs diff' fanno ciò che voglio di default. Sicuramente 'svn diff' può farlo ma mi manca qualcosa. Qualcuno sa come?Come ottenere NESSUN contesto quando si usa svn diff
risposta
Dopo aver esaminato il collegamento utile sopra riportato per rilassarsi, la risposta breve è che svn è costruito -in diff non può fare ciò che voglio. Puoi dirlo per usare la diff esterna standard e passare l'arg a quello per dirti che non vuoi un contesto. Ho messo il seguente alias nel mio .bashrc e tutto ora funziona bene se uso che, invece:
alias svndiff='svn diff --diff-cmd=diff -x -U0'
This thread sembra giungere alla conclusione che è necessario utilizzare un comando diff esterno per controllare la quantità di contesto.
preferisco diff unificate, così le mie dita digitare sempre
svn diff -x -u
Il che implica che un comando esterno (GNU diff) viene utilizzato, credo.
Grazie per il collegamento utile. Mi sorprende che il diff integrato non possa fare ciò che voglio. Mi sembra violare il principio Unix di avere il minimo risultato richiesto. L'uso dei comandi -x -u mi dà gli stessi risultati di no. 'svn help diff' dimmi che quelle sono le impostazioni predefinite. Forse non hai bisogno di digitare il carattere extra, dopotutto? – DaveBurns
È possibile reindirizzare i risultati di "svn diff" a grep e scrivere un'espressione regolare per ottenere ciò che si desidera. Ad esempio, provate questo:
svn diff | grep "^[+-\]"
Il comando precedente si ottiene tutte le linee che iniziano con un '+' o '-' o un '\'. (È necessario il '\' se si desidera vedere differenze come "\ No newline alla fine del file".)
Funziona bene se si desidera solo le linee modificate. Tuttavia, non riesce a fornire informazioni corrette sui numeri di riga. Per esempio. con 3 righe di contesto prima/dopo, "@@ -21,7 +21,7 @@", la riga 24 è stata modificata. Senza contesto vedresti "@@ -24,1 +24,1 @@" – kamczak
Il suggerimento sopra produce ancora il formato contesto, ma con 0 righe di contesto. Questo non è ancora il tradizionale output diff da prima di sovversione.
Ciò che funziona per me è: svn di --diff-cmd=diff -x --normal
L'--normal
opzione (nel diff che le navi con OSX) dà il formato tradizionale che alcune persone preferiscono.
- 1. Oltre Confronta come strumento diff predefinito in Eclipse quando si usa Mercurial?
- 2. Come ottenere git diff con il contesto completo?
- 3. Come rendere git-diff creare un formato "contesto" diff?
- 4. Uso del comando svn diff
- 5. Come applicare SVN diff a Git?
- 6. Cosa significa "MM" quando eseguo un svn diff?
- 7. Come si usa layoutIfNeeded?
- 8. Come si sblocca svn?
- 9. Come si usa '~' (tilde) nel contesto dei percorsi?
- 10. Configurare vimdiff per mostrare i colori differenti quando lo si utilizza per svn diff-
- 11. ViewDragHelper: come si usa?
- 12. Come impedire "svn diff" dalla generazione dell'output Unicode su Windows
- 13. Make SVN Commit stampa anche il diff
- 14. Come rendere svn diff mostra le modifiche remote?
- 15. Quando si usa l'istruzione Using?
- 16. BitmapCache? Quando e come si usa?
- 17. Come inserire testo quando si usa XElement
- 18. Configura P4merge come strumento SVN diff su OSX
- 19. Come si usa TTStyledTextLabel?
- 20. Contesto di reazione non trasferisce quando si usa un componente come prop
- 21. Come si ignora lo spazio quando si usa git whatchanged -p?
- 22. Twitter typeahead nessun risultato quando si usa "prefetch", ma si lavora con "remote" JSON
- 23. svn errore "nessun elemento trovato"
- 24. check svn: Nessun repository trovato
- 25. Quando si usa "apply" e quando "funcall"?
- 26. Git Diff tra HEAD e SVN Master
- 27. Come ottenere l'elenco dei file modificati in SharpSVN (come svn diff --summarize --xml)
- 28. Ottenere un errore con contesto in jQuery quando si usa ng-repeat e limit-to e un tooltip da tether.js
- 29. Ottenere contesto PopupMenu come ContextMenu
- 30. Come si imposta il protocollo quando si usa RedirectToAction?
'-x' è il parametro di estensione per' svn diff', fa sì che il token che segue immediatamente, qui '-U0', a essere passato al comando diff specificato con '--diff-cmd', qui' diff'. – valid