<?xml version="1.0" encoding="UTF-8"?>
<article id="Version_control">
  <title>Uso di WinMerge con altri strumenti<indexterm>
      <primary>integrazione</primary>
    </indexterm></title>

  <para>Il confronto e l'unione dei file sono spesso attività secondarie in un
processo di gestione delle modifiche più ampio. Per questo motivo WinMerge
viene spesso usato non solo da solo, ma anche insieme ad altri
strumenti. Inoltre, le utilità diff e merge forniscono funzionalità diverse,
quindi a volte è utile combinare diversi strumenti. Questo argomento
descrive i metodi principali per usare WinMerge con altri strumenti.</para>

  <section>
    <title>Uso dell'interfaccia della riga di comando (CLI)</title>

    <para>L'interfaccia della riga di comando (CLI) di WinMerge, descritta in <xref
linkend="Command_line" />, consente di eseguire WinMerge da una finestra del
prompt dei comandi, da script o da un altro strumento o programma. In
sostanza, qualsiasi programma che consenta di richiamare un eseguibile
esterno con almeno un percorso, può essere usato per avviare un'operazione
WinMerge.</para>

    <para>Ecco solo alcuni esempi:</para>

    <itemizedlist>
      <listitem>
        <para>Un file batch può avviare WinMerge e consentire agli utenti di specificare i
parametri in modo interattivo:</para>

        <literallayout>avviare "WinMerge" /B "C:\Programmi\WinMerge\WinMergeU.exe" /e /s /u /dl %3 /dr %5 %6 %7</literallayout>
      </listitem>

      <listitem>
        <para>Il client Subversion ti consente di chiamare un programma diff esterno e
passare parametri, come questo:</para>

        <literallayout>$ svn diff --diff-cmd "C:\Programmi\WinMerge\WinMergeU.exe" -x "-dl -dr" miofile </literallayout>
      </listitem>
    </itemizedlist>

    <tip>
      <para>Allo stesso modo, molti strumenti GUI (come client di controllo versione e
IDE) che includono strumenti diff integrati consentono invece di configurare
WinMerge come strumento diff predefinito. La sezione successiva descrive
come usare WinMerge in questo modo con TortoiseSVN e Visual Studio Team
Foundation Server. Per altri strumenti, come Eclipse e Perforce, controlla
la loro documentazione o cerca in Internet dettagli ed esempi.</para>
    </tip>
  </section>

  <section id="VersionControl_vcs">
    <title>Uso di WinMerge con sistemi di controllo della versione<indexterm>
        <primary>sistemi di controllo della versione</primary>

        <secondary>integrazione con</secondary>
      </indexterm></title>

    <para>È possibile configurare WinMerge per interagire con alcuni sistemi di
controllo della versione supportati (VCS). Questa sezione descrive
l'integrazione VCS e fornisce alcuni esempi.</para>

    <section>
      <title>Uso di WinMerge come strumento diff del sistema di controllo della versione</title>

      <indexterm>
        <primary>Integrazione TortoiseSVN</primary>
      </indexterm>

      <para>Quando confronti i file in TortoiseCVS, TortoiseSVN o TortoiseGit, puoi fare
in modo che VCS avvii WinMerge invece della sua utilità diff nativa. Puoi
configurare alcune di queste integrazioni durante l'<link
linkend="Installing_usinginstaller">installazione di WinMerge</link>.</para>

      <example>
        <title>Integrazione TortoiseSVN</title>

        <para>Ecco un'operazione di confronto di esempio in TortoiseSVN che usa
l'integrazione WinMerge. L'integrazione con TortoiseCVS e TortoiseGit è
simile.</para>

<orderedlist>
          <listitem>
            <para>In Esplora risorse, vai a una copia di lavoro di Subversion che hai
estratto.</para>
          </listitem>

          <listitem>
            <para>Fai clic con il pulsante destro del mouse su un file che si trova sotto la
gestione di Subversion (solitamente indicato da un'icona TortoiseSVN
distinta) e seleziona <guimenu>TortoiseSVN</guimenu> nel menu contestuale.</para>

            <itemizedlist>
              <listitem>
                <para>Se il file non è stato modificato, il menu contestuale contiene la
scorciatoia <guimenuitem>Differenze con la versione
precedente</guimenuitem>. Questo comando confronta la versione estratta del
file con la versione precedente archiviata nel repository.</para>
              </listitem>

              <listitem>
                <para>Se hai modificato il file, il menu contestuale contiene la stessa
scorciatoia <guimenuitem>Diff con la versione precedente</guimenuitem>, più
la scorciatoia <guimenuitem>Diff</guimenuitem>. Questo comando confronta la
tua revisione con la versione attuale (quella che hai estratto). È utile per
rivedere le modifiche apportate.</para>
              </listitem>
            </itemizedlist>
          </listitem>

          <listitem>
            <para>Scegli la scorciatoia <guimenuitem>Diff con la versione
precedente</guimenuitem> o <guimenuitem>Diff</guimenuitem>. Si apre la
finestra WinMerge, con le versioni dei file di destinazione caricate nella
finestra Confronto file.</para>
          </listitem>
        </orderedlist><para>La scorciatoia <menuchoice> <guimenu>TortoiseSVN</guimenu>
<guimenuitem>Diff</guimenuitem> </menuchoice> è disponibile per confrontare
due file qualsiasi nel tuo file system, non solo i file gestiti da
Subversion. Per illustrare come funziona l'integrazione WinMerge in questo
caso:</para>

<orderedlist>
          <listitem>
            <para>In Esplora risorse, tieni premuto <keycap>Ctrl</keycap>, seleziona due file
qualsiasi e fai clic con il pulsante destro del mouse.</para>
          </listitem>

          <listitem>
            <para>Scegli <menuchoice> <guimenu>TortoiseSVN</guimenu>
<guimenuitem>Diff</guimenuitem> </menuchoice> nel menu contestuale.</para>

            <para>Si apre la finestra WinMerge, con i file selezionati caricati nella finestra
Confronta file.</para>
          </listitem>
        </orderedlist></example>

      <example>
        <title>Integrazione di Visual Studio Team Foundation Server</title>

        <para>È possibile impostare manualmente WinMerge come strumento predefinito da
usare in Visual Studio per visualizzare le differenze in Team Foundation
Server (TFS). Altri sistemi di controllo della versione possono essere
impostati in modi molto simili.</para>

<orderedlist>
          <listitem>
            <para>In Visual Studio, vai al menu <menuchoice> <guimenu>Strumenti</guimenu>
<guimenuitem>Opzioni...</guimenuitem> </menuchoice>.</para>
          </listitem>
		  
          <listitem>
            <para>In <menuchoice> <guimenu>Controllo del codice sorgente</guimenu>
</menuchoice>, trova le opzioni <menuchoice> <guimenu>Visual Studio Team
Foundation Server</guimenu> </menuchoice>.</para>
          </listitem>
		  
          <listitem>
            <para>Seleziona <guimenuitem>Configura strumenti utente...</guimenuitem>.</para>
          </listitem>

          <listitem>
            <para>Seleziona <guimenuitem>Aggiungi...</guimenuitem>.</para>
          </listitem>
		  
		  <listitem>
            <mediaobject>
<imageobject> <imagedata fileref="screenshots/tfs_configure.png"
format="PNG" /> </imageobject></mediaobject>
			<para>Digitare le seguenti opzioni nello strumento di configurazione.</para>
			<itemizedlist>
              <listitem>
                <para>Estensione: .*</para>
              </listitem>

              <listitem>
                <para>Operazione: Confronta</para>
              </listitem>
			  
			  <listitem>
                <para>Comando: {Percorso di WinMerge}\WinMergeU.exe</para>
              </listitem>
			  
			  <listitem>
                <para>Argomenti: /e /u /dl %6 /dr %7 %1 %2</para>
              </listitem>
            </itemizedlist>
			<para>Dove {Percorso WinMerge} è il percorso in cui è installato WinMerge. Nella
schermata sopra è installato nel percorso di installazione predefinito
C:\Program Files (x86)\WinMerge\WinMerge.exe</para>
			<para>Gli argomenti sono descritti in <xref linkend="Command_line" />.</para>
          </listitem>
        </orderedlist><para>Ogni volta che dici a TFS di confrontare due file, ora userà WinMerge.</para>
      </example>
    </section>
  </section>
</article>
