Diff e unione

Diff ignora il tipo di contenuti

Interessante solo quando le differenze vengono fatte da subversion stesso. Quando viene impostato, l'operazione diff di subversion ignora il tipo di contenuti delle voci. Diversamente non vengono prodotte differenze dai file binari.

Le differenze nell'albero delle revisioni sono ricorsive

Quando impostate, le differenze fatte dall'interno dell'albero delle revisioni sono ricorsive, come anche in tutti gli altri casi. Diversamente sono visualizzate esclusivamente le modifiche relative ai soli elementi di quella cartella. Come questo viene fatto dipende da come vengono generate le differenze (da Subversion stesso o da visualizzatori esterni).

Le differenze ignorano i cambiamenti agli spazi

Ignora i cambiamenti al numero degli spazi (opzione -b di diff)

Diff ignora tutti gli spazi bianchi

Ignora tutti gli spazi (opzione -w di diff)

Preferisci programma di unione esterno

Imposta se preferire l'unione con un programma esterno o con l'unione di Subversion

Utilizza il formato delle differenze di Git

Mostra copie come aggiunte

Utilizza un visualizzatore esterno delle differenze

Seleziona un'applicazione esterna per visualizzare le differenze; quella predefinita è Kompare.

Visualizzatore esterno differenze

Definisce che cosa sta usando kdesvn per la visualizzazione esterna delle differenze, e in che modo viene chiamato. Ci sono tre modi:

<programma> <parametro>

Le differenze saranno generate con subversion e messe direttamente nello standard input del programma esterno (cioè, non servono file temporanei)

<programma> <parametro> %f

La differenza sarà generata con subversion, salvata in un file temporaneo e il parametro %f sarà rimpiazzato con il nome di quel file. Questo può essere usato, per esempio, con una semplice chiamata a less o ad un visualizzatore di testo.

<programma> <parametro> %1 %2

kdesvn lascia generare le differenze al programma esterno. %1 and %2 saranno sostituiti con i valori richiesti (i nomi dei file o delle cartelle). kdesvn immagazzina i contenuti da confrontare in un ambiente temporaneo (per le cartelle un «export», per un singolo file un «cat») quando necessario, e lo ripulisce dopo la chiusura del programma esterno o di se stesso.

Preferisci programma di unione esterno

Seleziona se nella finestra di unione Utilizza unificatore esterno debba essere marcato o meno come predefinito.

Programma esterno di unione

Configura il programma e le opzioni da usare quando non vuoi usare la funzione di unione integrata di subversion; come predefinito è kdiff3 %s1 %s2 %t. L'ordine di sostituzione delle variabili non è importante, e i termini possono anche comparire più di una volta, ad es. kdiff3 -o %t %s1 %s2 %t. Questa cosa è stata testata solo con meld e KDiff3. Considera che che i programmi esterno normalmente non riconoscono il parametro ignore di subversion, quindi questi possono mostrare molto di più del previsto.

Sostituzioni di variabile per il programma di unione esterno

%s1

Sostituito con la sorgente numero uno.

%s2

Sostituito con la sorgente numero due. Se questa è vuota o uguale alla sorgente uno e l'inizio e la fine della revisione sono uguali, questa variabile sarà ignorata. Quindi fai attenzione ad impostare righe di comandi come xxdiff --title1 %s1 --title2 %s2 %s1 %s2 %t.

%t

Sostituito con la destinazione.

Programma di risoluzione dei conflitti

Puoi usare un programma esterno, come KDiff3 per la risoluzione dei conflitti, quello predefinito è kdiff3 %o %m %n -o %t.

Sostituzione di variabili per il risolutore esterno di conflitti

Tra parentesi dopo ciascuna descrizione c'è un esempio di come Subversion chiamerebbe i file. Queste opzioni sono progettate per KDiff3, perché in questo momento è l'unica applicazione che supporta tutti i parametri richiesti per una buona risoluzione dei conflitti.

%o oppure %l

Versione vecchia (locale, a sinistra). Questo significa il numero di revisione più basso, cioè il punto d'inizio delle modifiche in conflitto. (foo.cc.r2)

%m oppure %w

Versione mia (funzionante) del file, cioè quello che hai modificato rispetto alla vecchia versione. (foo.cc.mine)

%n oppure %r

Versione nuova (remota, a destra) del file. Per esempio quella fatta da qualcun altro. (foo.cc.r3)

%t

Il nome della destinazione, ad es. quello dell'origine. Per KDiff3, ad esempio, questo dovrebbe essere il nome dopo il parametro -o (cioè il nome del file di output). (foo.cc)