Come posso visualizzare la differenza tra due revisioni specifiche in Subversion?


120

Sto usando Subversion tramite l'interfaccia della riga di comando di Linux.

Voglio vedere la differenza tra la revisione 11390 e 8979 di un file specifico chiamato fSupplierModel.phpnel mio terminale. Come lo posso fare?


Aggiungi qui è come riapplicarlo
Vadzim

Risposte:


171

Vedi svn diffnel manuale:

svn diff -r 8979:11390 http://svn.collab.net/repos/svn/trunk/fSupplierModel.php

3
Se vuoi un output carino, installa colordiff e aggiungi `| colordiff` alla fine del comando precedente per convogliare tutto attraverso di esso.
William Turrell,

56

Per confrontare intere revisioni, è semplicemente:

svn diff -r 8979:11390


Se desideri confrontare lo stato dell'ultimo commit con i file di lavoro attualmente salvati, puoi utilizzare parole chiave utili:

svn diff -r PREV:HEAD

(Nota, senza specificare nulla in seguito, vengono confrontati tutti i file nelle revisioni specificate.)


Puoi confrontare un file specifico se aggiungi il percorso del file in seguito:

svn diff -r 8979:HEAD /path/to/my/file.php


2
mettere HEAD: PREV sembrava avere più senso per me nell'output diff, forse aiuterà gli altri
Fonix

@Fonix sei nel paradigma di "in che modo un altro commit differisce dal mio stato attuale"? Se è così, sono d'accordo. Di solito penso ai commit dei cambiamenti cronologici, quindi i cambiamenti fatti in HEAD sarebbero stati i cambiamenti nuovi / aggiunti da PREV, che è il paradigma in cui penso di solito. Ci sono casi e argomenti da sostenere per entrambi i paradigmi.
ahnbizcad
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.