hgbook

changeset 836:11a6ba60bb9e

Final editing for chapters 0-3.
author gpiancastelli
date Wed Aug 19 19:39:24 2009 +0200 (2009-08-19)
parents ae54f5670834
children fc4cf5ddddd4
files it/ch00-preface.xml it/ch01-intro.xml it/ch02-tour-basic.xml it/ch03-tour-merge.xml it/examples/tour-merge-conflict.commit.it it/examples/tour-merge-conflict.pull.it it/examples/tour-merge-conflict.wife.it it/examples/tour.cat1.it it/examples/tour.cat2.it it/examples/tour.clone-pull.it it/examples/tour.clone-push.it it/examples/tour.incoming.it it/examples/tour.log-r.it it/examples/tour.log-v.it it/examples/tour.log-vp.it it/examples/tour.log.it it/examples/tour.log.range.it it/examples/tour.merge.cat1.it it/examples/tour.merge.cat2.it it/examples/tour.merge.heads.it it/examples/tour.merge.parents.it it/examples/tour.merge.tip.it it/examples/tour.older.it it/examples/tour.outgoing.it it/examples/tour.outgoing.net.it it/examples/tour.parents.it it/examples/tour.pull.it it/examples/tour.push.it it/examples/tour.push.nothing.it it/examples/tour.tip.it it/examples/tour.version.it
line diff
     1.1 --- a/it/ch00-preface.xml	Tue Aug 18 22:36:35 2009 +0200
     1.2 +++ b/it/ch00-preface.xml	Wed Aug 19 19:39:24 2009 +0200
     1.3 @@ -7,7 +7,7 @@
     1.4  
     1.5      <para id="x_72e">Alcuni anni fa, quando cominciai a sentire il desiderio di spiegare perché credevo che il controllo di revisione distribuito fosse importante, questo campo era talmente nuovo che la letteratura pubblicata da offrire come riferimento alle persone interessate era quasi inesistente.</para>
     1.6  
     1.7 -    <para id="x_72f">Sebbene a quel tempo fossi abbastanza impegnato a lavorare ai meccanismi interni di Mercurial, mi misi a scrivere questo libro perché sembrava il modo più efficace di aiutare il software a raggiungere il grande pubblico, accompagnandolo con l'idea che il controllo di revisione dovesse essere distribuito per natura. Rendo il libro disponibile online secondo i termini di una licenza liberale per la stessa ragione: per diffondere il messaggio.</para>
     1.8 +    <para id="x_72f">Sebbene a quel tempo fossi abbastanza impegnato a lavorare sui meccanismi interni di Mercurial, mi misi a scrivere questo libro perché sembrava il modo più efficace di aiutare il software a raggiungere il grande pubblico, accompagnandolo con l'idea che il controllo di revisione dovesse essere distribuito per natura. Rendo il libro disponibile online secondo i termini di una licenza liberale per la stessa ragione: per diffondere il messaggio.</para>
     1.9  
    1.10      <para id="x_730">Un buon libro di software possiede un ritmo familiare che assomiglia da vicino al racconto di una storia: che cos'è questa cosa? Perché è importante? Come mi aiuterà? Come si usa? In questo libro, provo a rispondere a queste domande per il controllo di revisione distribuito in generale e per Mercurial in particolare.</para>
    1.11    </sect1>
    1.12 @@ -15,7 +15,7 @@
    1.13    <sect1>
    1.14      <title>Grazie per il vostro sostegno a Mercurial</title>
    1.15  
    1.16 -    <para id="x_731">Acquistando una copia di questo libro state sostenendo l'evoluzione e la libertà ininterrotta di Mercurial in particolare e del software free e open source in generale. O'Reilly Media e io stiamo donando le mie royalty sulle vendite di questo libro alla Software Freedom Conservancy (<ulink
    1.17 +    <para id="x_731">Acquistando una copia di questo libro state sostenendo il continuo sviluppo e la libertà ininterrotta di Mercurial in particolare e del software libero e open source in generale. O'Reilly Media e io stiamo donando le mie royalty sulle vendite di questo libro alla Software Freedom Conservancy (<ulink
    1.18  	url="http://www.softwarefreedom.org/">http://www.softwarefreedom.org/</ulink>) che fornisce supporto in termini di personale e di assistenza legale a Mercurial e a un certo numero di altri progetti software open source importanti e meritevoli.</para>
    1.19    </sect1>
    1.20  
    1.21 @@ -24,7 +24,7 @@
    1.22  
    1.23      <para id="x_732">Questo libro non esisterebbe se non fosse per gli sforzi di Matt Mackall, l'autore e capo progetto di Mercurial. Lo assistono abilmente centinaia di collaboratori volontari sparsi in tutto il mondo.</para>
    1.24  
    1.25 -    <para id="x_733">I miei figli, Cian e Ruairi, si sono sempre fatti trovare pronti ad aiutarmi a rilassarmi con meravigliosi e spericolati giochi per bambini. Vorrei anche ringraziare la mia ex moglie, Shannon, per il suo supporto.</para>
    1.26 +    <para id="x_733">I miei figli, Cian e Ruairi, si sono sempre fatti trovare pronti per aiutarmi a rilassarmi con meravigliosi e spericolati giochi da bambini. Vorrei anche ringraziare la mia ex moglie, Shannon, per il suo supporto.</para>
    1.27  
    1.28      <para id="x_734">I miei colleghi e amici hanno fornito aiuto e sostegno in innumerevoli modi. Questa lista di persone non può che essere decisamente incompleta: Stephen Hahn, Karyn Ritter, Bonnie Corwin, James Vasile, Matt Norwood, Eben Moglen, Bradley Kuhn, Robert Walsh, Jeremy Fitzhardinge, Rachel Chalmers.</para>
    1.29  
    1.30 @@ -42,7 +42,7 @@
    1.31    <sect1>
    1.32      <title>Convenzioni usate in questo libro</title>
    1.33  
    1.34 -    <para id="x_73a">Questo libro adotta le seguenti convenzioni tipografiche:</para>
    1.35 +    <para id="x_73a">Per il testo di questo libro sono state adottate le seguenti convenzioni tipografiche.</para>
    1.36  
    1.37      <variablelist>
    1.38        <varlistentry>
    1.39 @@ -57,7 +57,7 @@
    1.40          <term><literal>Spaziatura fissa</literal></term>
    1.41  
    1.42          <listitem>
    1.43 -          <para id="x_73c">Usato per i listati dei programmi, così come all'interno di paragrafi che fanno riferimento a elementi di programmazione come variabili o nomi di funzione, database, tipi di dato, variabili d'ambiente, istruzioni e parole chiave.</para>
    1.44 +          <para id="x_73c">Usato per i listati dei programmi e all'interno di paragrafi che fanno riferimento a elementi di programmazione come variabili o nomi di funzione, database, tipi di dato, variabili d'ambiente, istruzioni e parole chiave.</para>
    1.45          </listitem>
    1.46        </varlistentry>
    1.47  
    1.48 @@ -83,7 +83,7 @@
    1.49      </tip>
    1.50  
    1.51      <caution>
    1.52 -      <para id="x_740">Questa icona indica un avviso o avvertimento.</para>
    1.53 +      <para id="x_740">Questa icona indica un avvertimento.</para>
    1.54      </caution>
    1.55    </sect1>
    1.56  
     2.1 --- a/it/ch01-intro.xml	Tue Aug 18 22:36:35 2009 +0200
     2.2 +++ b/it/ch01-intro.xml	Wed Aug 19 19:39:24 2009 +0200
     2.3 @@ -7,9 +7,9 @@
     2.4  
     2.5      <para id="x_6d">Il controllo di revisione è il processo tramite il quale si gestiscono molteplici versioni di una qualsiasi unità di informazione. Molte persone eseguono a mano questo processo nella sua forma più semplice, ogni volta che modificano un file e lo salvano con un nuovo nome che contiene un numero più alto del numero della versione precedente.</para>
     2.6  
     2.7 -    <para id="x_6e">Tuttavia, gestire più versioni anche solo di un singolo file è un'operazione soggetta a errori, quindi strumenti software per automatizzare questo processo sono stati disponibili per molto tempo. I primi strumenti automatizzati per il controllo di revisione erano deputati ad assistere un singolo utente nella gestione delle revisioni di un singolo file. Nel corso delle ultime decadi, il campo d'azione degli strumenti di controllo di revisione si è ampiamente esteso, e ora sono in grado di gestire un grande numero di file e di aiutare più persone a lavorare insieme. I migliori strumenti moderni di controllo di revisione non hanno alcun problema a fronteggiare gruppi di migliaia di persone che lavorano insieme su progetti composti da centinaia di migliaia di file.</para>
     2.8 -
     2.9 -    <para id="x_6f">La comparsa del controllo di revisione distribuito è relativamente recente, e finora questo nuovo campo è cresciuto grazie alla propensione umana per l'esplorazione di territori sconosciuti.</para>
    2.10 +    <para id="x_6e">Tuttavia, gestire più versioni anche solo di un singolo file è un'operazione soggetta a errori, quindi gli strumenti software per automatizzare questo processo sono stati disponibili per molto tempo. I primi strumenti automatizzati per il controllo di revisione erano deputati ad assistere un singolo utente nella gestione delle revisioni di un singolo file. Nel corso delle ultime decadi, il campo d'azione degli strumenti di controllo di revisione si è ampiamente esteso, e ora sono in grado di gestire un grande numero di file e di aiutare più persone a lavorare insieme. I migliori strumenti moderni di controllo di revisione non hanno alcun problema a fronteggiare gruppi di migliaia di persone che lavorano insieme su progetti composti da centinaia di migliaia di file.</para>
    2.11 +
    2.12 +    <para id="x_6f">La comparsa del controllo di revisione distribuito è relativamente recente, e finora questo nuovo campo si è sviluppato grazie alla propensione umana per l'esplorazione di territori sconosciuti.</para>
    2.13  
    2.14      <para id="x_70">Sto scrivendo un libro sul controllo di revisione distribuito perché credo che sia una materia importante che merita una guida sul campo. Ho scelto di trattare Mercurial perché è lo strumento più facile con cui saggiare il terreno, e tuttavia è in grado di scalare fino a soddisfare le richieste di ambienti reali e impegnativi dove molti altri strumenti di controllo di revisione si sono dovuti arrendere.</para>
    2.15  
    2.16 @@ -19,10 +19,10 @@
    2.17        <para id="x_71">Esiste un certo numero di ragioni per le quali voi o il vostro gruppo potreste voler usare uno strumento automatico per il controllo di revisione su un progetto.</para>
    2.18  
    2.19        <itemizedlist>
    2.20 -	<listitem><para id="x_72">Terrà traccia della storia e dell'evoluzione del vostro progetto, così voi non dovete farlo. Per ogni modifica, registrerà informazioni riguardanti <emphasis>chi</emphasis> l'ha fatta, <emphasis>perché</emphasis> l'ha fatta, <emphasis>quando</emphasis> è stata fatta e <emphasis>cosa</emphasis> è stato modificato.</para></listitem>
    2.21 +	<listitem><para id="x_72">Lo strumento terrà traccia della storia e dell'evoluzione del vostro progetto, così voi non dovete farlo. Per ogni modifica, registrerà informazioni riguardanti <emphasis>chi</emphasis> l'ha fatta, <emphasis>perché</emphasis> l'ha fatta, <emphasis>quando</emphasis> è stata fatta e <emphasis>cosa</emphasis> è stato modificato.</para></listitem>
    2.22  	<listitem><para id="x_73">Quando state lavorando con altre persone, il software di controllo di revisione facilita la collaborazione. Per esempio, quando due persone effettuano cambiamenti incompatibili più o meno simultaneamente, il software vi aiuterà a identificare e risolvere questi conflitti.</para></listitem>
    2.23 -	<listitem><para id="x_74">Può aiutarvi a rettificare i vostri errori. Se fate una modifica che più tardi si rivela essere un errore, potete ritornare a una versione precedente di uno o più file. In effetti, uno strumento di controllo di revisione <emphasis>davvero</emphasis> buono vi aiuterà a calcolare efficientemente il momento esatto in cui un problema è stato introdotto (si veda la <xref linkend="sec:undo:bisect"/> per i dettagli).</para></listitem>
    2.24 -	<listitem><para id="x_75">Vi aiuterà a lavorare simultaneamente su molteplici versioni del vostro progetto e a gestire gli spostamenti tra una versione e l'altra.</para></listitem>
    2.25 +	<listitem><para id="x_74">Lo strumento può aiutarvi a rettificare i vostri errori. Se fate una modifica che più tardi si rivela essere un errore, potete ritornare a una versione precedente di uno o più file. In effetti, uno strumento di controllo di revisione <emphasis>davvero</emphasis> buono vi aiuterà a calcolare efficientemente il momento esatto in cui un problema è stato introdotto (si veda la <xref linkend="sec:undo:bisect"/> per i dettagli).</para></listitem>
    2.26 +	<listitem><para id="x_75">Il software vi aiuterà a lavorare simultaneamente su molteplici versioni del vostro progetto e a gestire gli spostamenti tra una versione e l'altra.</para></listitem>
    2.27        </itemizedlist>
    2.28  
    2.29        <para id="x_76">La maggior parte di queste ragioni sono altrettanto valide&emdash;almeno in teoria&emdash;sia che lavoriate su un progetto da soli sia che collaboriate insieme a un centianio di altre persone.</para>
    2.30 @@ -33,9 +33,9 @@
    2.31  
    2.32        <para id="x_79">D'altra parte, il <quote>lavoretto veloce</quote> di una singola persona potrebbe sembrare il contesto meno adatto per impiegare uno strumento di controllo di revisione, perché sicuramente il costo di usarne uno deve essere vicino al costo complessivo del progetto. Giusto?</para>
    2.33  
    2.34 -      <para id="x_7a">Mercurial supporta in maniera unica <emphasis>entrambe</emphasis> queste dimensioni di sviluppo. Potete impararne le basi in pochi minuti appena, e grazie al suo basso costo di gestione potete applicare il controllo di revisione al più piccolo dei progetti con facilità. La sua semplicità vi permetterà di concentrarvi su qualunque cosa stiate <emphasis>davvero</emphasis> cercando di fare senza farvi distrarre da schiere di concetti astrusi o lunghe sequenze di comandi. Allo stesso tempo, le elevate prestazioni e la natura peer-to-peer di Mercurial vi permetteranno di scalare in maniera indolore per gestire grandi progetti.</para>
    2.35 -
    2.36 -      <para id="x_7b">Nessuno strumento di controllo di revisione può salvare un progetto gestito male, ma la scelta degli strumenti adeguati può fare una notevole differenza nella fluidità con cui potete lavorare su un progetto.</para>
    2.37 +      <para id="x_7a">Mercurial supporta in maniera unica <emphasis>entrambe</emphasis> queste dimensioni di sviluppo. Potete impararne le basi in pochi minuti appena, e grazie al suo basso costo di gestione potete applicare il controllo di revisione al più piccolo dei progetti con facilità. La sua semplicità vi permetterà di concentrarvi su qualunque cosa stiate <emphasis>davvero</emphasis> cercando di fare senza distrarvi con schiere di concetti astrusi o lunghe sequenze di comandi. Allo stesso tempo, le elevate prestazioni e la natura peer-to-peer di Mercurial vi permetteranno di scalare in maniera indolore per gestire grandi progetti.</para>
    2.38 +
    2.39 +      <para id="x_7b">Nessuno strumento di controllo di revisione può salvare un progetto gestito male, ma la scelta degli strumenti adeguati può fare una notevole differenza nella facilità con cui potete lavorare su un progetto.</para>
    2.40  
    2.41      </sect2>
    2.42  
    2.43 @@ -58,15 +58,15 @@
    2.44    <sect1>
    2.45      <title>A proposito degli esempi in questo libro</title>
    2.46  
    2.47 -    <para id="x_84">Questo libro tratta gli esempi di codice in maniera inusuale. Tutti gli esempi sono <quote>vivi</quote>&emdash;ognuno di essi è in effetti il risultato di uno script di shell che esegue i comandi Mercurial che vedete. Ogni volta che un'immagine del libro viene costruita dai suoi sorgenti, tutti gli script di esempio vengono automaticamente eseguiti e i loro risultati correnti vengono confrontati con i loro risultati attesi.</para>
    2.48 +    <para id="x_84">Questo libro tratta gli esempi di codice in maniera inusuale. Tutti gli esempi sono <quote>vivi</quote>&emdash;ognuno di essi è in effetti il risultato di uno script di shell che esegue i comandi Mercurial che vedete. Ogni volta che un'immagine del libro viene assemblata dai suoi sorgenti, tutti gli script di esempio vengono automaticamente eseguiti e i loro risultati correnti vengono confrontati con i loro risultati attesi.</para>
    2.49  
    2.50      <para id="x_85">Il vantaggio di questo approccio è che gli esempi sono sempre accurati, in quanto descrivono <emphasis>esattamente</emphasis> il comportamento della versione di Mercurial menzionata sulla copertina del libro. Se aggiorno la versione di Mercurial che sto documentando e il risultato di qualche comando cambia, il processo di assemblaggio del libro fallisce.</para>
    2.51  
    2.52 -    <para id="x_86">C'è un piccolo svantaggio in questo approccio, cioè che le date e gli orari che vedete negli esempi tendono a venire <quote>compressi</quote> insieme in modo anomalo, diversamente da quanto accadrebbe se gli stessi comandi fossero digitati da un essere umano. Laddove un essere umano non può inviare più di un comando ogni pochi secondi, le cui marcature temporali sarebbero analogamente intervallate, i miei script d'esempio automatizzati sono in grado di eseguire molti comandi in un secondo.</para>
    2.53 +    <para id="x_86">C'è un piccolo svantaggio in questo approccio: le date e gli orari che vedete negli esempi tendono a venire <quote>compressi</quote> insieme in modo anomalo, diversamente da quanto accadrebbe se gli stessi comandi fossero digitati da un essere umano. Laddove un essere umano non può inviare più di un comando ogni pochi secondi, le cui marcature temporali sarebbero analogamente intervallate, i miei script d'esempio automatizzati sono in grado di eseguire molti comandi in un secondo.</para>
    2.54  
    2.55      <para id="x_87">Come conseguenza di questo fatto, potrebbe sembrare che molti inserimenti (in inglese, commit) consecutivi vengano eseguiti durante lo stesso secondo. Potete osservare la presenza di questa anomalia nell'esempio di <literal role="hg-ext">bisect</literal> nella <xref linkend="sec:undo:bisect"/>, tanto per farvi un'idea.</para>
    2.56  
    2.57 -    <para id="x_88">Quindi, mentre leggete gli esempi, non date troppo peso alle date e agli orari che vedete nei risultati dei comandi, ma potete <emphasis>decisamente</emphasis> fare affidamento sulla consistenza e riproducibilità del comportamento illustrato.</para>
    2.58 +    <para id="x_88">Quindi, mentre leggete gli esempi, non date troppo peso alle date e agli orari che vedete nei risultati dei comandi, ma fate <emphasis>decisamente</emphasis> affidamento sulla consistenza e riproducibilità del comportamento illustrato.</para>
    2.59  
    2.60    </sect1>
    2.61  
    2.62 @@ -77,7 +77,7 @@
    2.63  
    2.64      <para id="x_8a">La prima generazione ha cominciato col gestire singoli file su singoli computer. Sebbene questi strumenti rappresentassero un enorme progresso rispetto al controllo di revisione manuale effettuato ad hoc, il loro modello di bloccaggio (in inglese, locking) e la restrizione a un singolo computer limitarono il loro impiego a piccoli gruppi strettamente uniti.</para>
    2.65  
    2.66 -    <para id="x_8b">La seconda generazione ha rilassato questi vincoli spostandosi su architetture di rete e gestendo interi progetti alla volta. Con l'aumentare delle dimensioni dei progetti, gli strumenti incontrarono nuovi problemi. A causa della frequenza elevata con cui i client avevano bisogno di parlare con i server, la scalabilità dei server divenne un problema per progetti di grandi dimensioni. Una connessione di rete inaffidabile poteva completamente impedire agli utenti remoti di essere in grado di parlare al server. Man mano che i progetti open source cominciarono a rendere l'accesso in sola lettura disponibile a chiunque in forma anonima, persone senza privilegi di inserimento scoprivano di non poter usare gli strumenti per interagire con un progetto in modo naturale, in quanto non erano in grado di registrare le modifiche da loro effettuate.</para>
    2.67 +    <para id="x_8b">La seconda generazione ha rilassato questi vincoli spostandosi su architetture di rete e gestendo interi progetti alla volta. Con l'aumentare delle dimensioni dei progetti, gli strumenti incontrarono nuovi problemi. A causa della frequenza elevata con cui i client avevano bisogno di parlare con i server, la scalabilità dei server divenne un problema per progetti di grandi dimensioni. Una connessione di rete inaffidabile poteva completamente impedire agli utenti remoti di parlare con il server. Man mano che i progetti open source cominciarono a rendere l'accesso in sola lettura disponibile a chiunque in forma anonima, persone senza privilegi di inserimento scoprivano di non poter usare gli strumenti per interagire con un progetto in modo naturale, in quanto non erano in grado di registrare le modifiche da loro effettuate.</para>
    2.68  
    2.69      <para id="x_8c">La generazione attuale degli strumenti di controllo di revisione è di natura peer-to-peer. Tutti questi sistemi hanno abbandonato la dipendenza da un singolo server centrale e permettono alle persone di distribuire i propri dati di controllo di revisione laddove sono effettivamente necessari. La collaborazione attraverso Internet non è più vincolata dalla tecnologia, ma è diventata una questione di scelta e consenso. Gli strumenti moderni possono operare offline indefinitamente e autonomamente, utilizzando una connessione di rete solo quando è necessario sincronizzare i cambiamenti con un altro repository.</para>
    2.70  
    2.71 @@ -87,7 +87,7 @@
    2.72  
    2.73      <para id="x_8d">Sebbene per diversi anni gli stumenti per il controllo di revisione distribuito si siano mantenuti robusti e usabili tanto quanto le loro controparti delle generazioni precedenti, questo non vuol dire che le persone che utilizzavano strumenti più vecchi si siano necessariamente accorte dei loro vantaggi. Ci sono diversi modi in cui gli strumenti distribuiti brillano rispetto a quelli centralizzati.</para>
    2.74  
    2.75 -    <para id="x_8e">Per un singolo sviluppatore, gli strumenti distribuiti sono quasi sempre più veloci di quelli centralizzati. Questo avviene per una semplice ragione: uno strumento centralizzato ha bisogno di utilizzare la rete per molte operazioni comuni, perché la maggior parte dei metadati sono memorizzati in una singola copia sul server centrale. Uno strumento distribuito memorizza tutti i suoi metadati localmente. A parità di altre condizioni, utilizzare la rete aggiunge un costo aggiuntivo a uno strumento centralizzato. Non sottovalutate l'importanza di uno strumento veloce e reattivo: vi troverete a passare molto tempo interagendo con il vostro software di controllo di revisione.</para>
    2.76 +    <para id="x_8e">Per un singolo sviluppatore, gli strumenti distribuiti sono quasi sempre più veloci di quelli centralizzati. Questo avviene per una semplice ragione: uno strumento centralizzato ha bisogno di utilizzare la rete per molte operazioni comuni, perché la maggior parte dei metadati sono memorizzati in una singola copia sul server centrale. Uno strumento distribuito memorizza tutti i suoi metadati localmente. A parità di altre condizioni, utilizzare la rete aggiunge un costo supplementare a uno strumento centralizzato. Non sottovalutate l'importanza di uno strumento veloce e reattivo: vi troverete a passare molto tempo interagendo con il vostro software di controllo di revisione.</para>
    2.77  
    2.78      <para id="x_8f">Gli strumenti distribuiti sono indifferenti alle stravaganze dell'infrastruttura dei vostri server, sempre perché replicano i metadati in così tanti luoghi. Se usate un sistema centralizzato e il vostro server si guasta, fareste meglio a sperare che il vostro sistema di backup sia affidabile e che il vostro ultimo backup sia recente ed effettivamente funzionante. Con uno strumento distribuito, avete molti backup disponibili sui computer di ogni singolo collaboratore.</para>
    2.79  
    2.80 @@ -113,7 +113,7 @@
    2.81  	  <listitem><para id="x_97">rendono più facile riconciliarsi dopo un fork sociale, perché l'unica operazione che viene coinvolta dal punto di vista del software di controllo di revisione è semplicemente un'altra unione.</para></listitem>
    2.82      </itemizedlist>
    2.83  
    2.84 -	<para id="x_98">Alcune persone oppongono resistenza agli strumenti distribuiti perché vogliono mantenere uno stretto controllo sui propri progetti e credono che gli strumenti centralizzati diano loro questo controllo. Tuttavia, se siete tra quelli che hanno questa convinzione, e il vostro repository CVS o Subversion è disponibile pubblicamente, sappiate che esistono numerosi strumenti in grado di estrarre l'intera cronologia del vostro progetto (anche se lentamente) e ricrearla da qualche altra parte al di là del vostro controllo. Quindi non solo il vostro controllo in questo caso è illusorio, ma state anche rinunciando alla possibilità di collaborare fluidamente con chiunque si senta in dovere di duplicare la cronologia del vostro progetto.</para>
    2.85 +	<para id="x_98">Alcune persone oppongono resistenza agli strumenti distribuiti perché vogliono mantenere uno stretto controllo sui propri progetti e credono che gli strumenti centralizzati diano loro questo controllo. Tuttavia, se siete tra quelli che hanno questa convinzione, e il vostro repository CVS o Subversion è disponibile pubblicamente, sappiate che esistono numerosi strumenti in grado di estrarre l'intera cronologia del vostro progetto (anche se lentamente) e ricrearla da qualche altra parte al di là del vostro controllo. Quindi non solo il vostro controllo in questo caso è illusorio, ma state anche rinunciando alla possibilità di collaborare facilmente con chiunque si senta in dovere di duplicare la cronologia del vostro progetto.</para>
    2.86  
    2.87        </sect3>
    2.88      </sect2>
    2.89 @@ -141,11 +141,11 @@
    2.90  
    2.91      <para id="x_a1">Se avete una vaga familiarità con i sistemi di controllo di revisione, dovreste essere in grado di cominciare a usare Mercurial in meno di cinque minuti. Anche se non è così, non vi ci vorrà più di qualche altro minuto. L'insieme di comandi e caratteristiche di Mercurial è generalmente uniforme e consistente, così potete tenere a mente poche regole generali piuttosto che una nutrita schiera di eccezioni.</para>
    2.92  
    2.93 -    <para id="x_a2">Potete cominciare a lavorare con Mercurial su un piccolo progetto in pochi minuti, creando nuove modifiche e rami di sviluppo, trasferendo cambiamenti sia localmente che attraverso la rete, sfruttando la velocità di tutte le operazioni di stato e cronologia. Mercurial tenta di essere agile e di non starvi tra i piedi combinando un basso costo cognitivo con operazioni estremamente veloci.</para>
    2.94 +    <para id="x_a2">Potete cominciare a lavorare con Mercurial su un piccolo progetto in pochi minuti, creando nuove modifiche e rami di sviluppo, trasferendo cambiamenti sia localmente che attraverso la rete, sfruttando la velocità di tutte le operazioni di stato e cronologia. Mercurial cerca di essere agile e di non starvi tra i piedi combinando un basso costo cognitivo con operazioni estremamente veloci.</para>
    2.95  
    2.96      <para id="x_a3">L'utilità di Mercurial non si limita ai piccoli progetti: è usato da progetti contenenti decine di migliaia di file e centinaia di megabyte di codice sorgente su cui collaborano centinaia di migliaia di sviluppatori.</para>
    2.97  
    2.98 -    <para id="x_a4">Se le funzioni principali di Mercurial non sono sufficienti per voi, è facile aggiungerne di nuove. Mercurial è particolarmente adatto alla programmazione delle proprie operazioni, e il codice pulito della sua implementazione in Python facilita l'aggiunta di funzioni sotto forma di estensioni. Esistono già un certo numero di estensioni utili e popolari, che spaziano dal supporto alla identificazione dei bug fino al miglioramento delle prestazioni.</para>
    2.99 +    <para id="x_a4">Se le funzioni principali di Mercurial non sono sufficienti per voi, è facile aggiungerne di nuove. Mercurial è particolarmente adatto alla programmazione delle proprie operazioni, e il codice pulito della sua implementazione in Python facilita l'aggiunta di funzioni sotto forma di estensioni. Esistono già un certo numero di estensioni utili e popolari, che spaziano dal supporto all'identificazione dei bug fino al miglioramento delle prestazioni.</para>
   2.100  
   2.101    </sect1>
   2.102    <sect1>
   2.103 @@ -202,10 +202,10 @@
   2.104  
   2.105        <para id="x_b7">CVS ha una nozione confusa di etichette e rami di lavoro che non cercherò nemmeno di descrivere. Non gestisce per bene il cambiamento dei nomi di file o directory, esponendo il repository al rischio di danneggiamenti. Non ha quasi alcuna funzionalità per il controllo della consistenza interna, quindi tipicamente non è nemmeno possibile dire se un repository è danneggiato. Non raccomanderei CVS per nessun progetto, nuovo o esistente.</para>
   2.106  
   2.107 -      <para id="x_b8">Mercurial può importare la cronologia di revisione da CVS. Tuttavia, ci sono alcune avvertenze da considerare, valide anche per qualsiasi altro strumento di controllo di revisione che importi dati da CVS. A causa della mancanza di inserimenti atomici in CVS e della mancanza di versioni per la gerarchia dei file, non è possibile ricostruire la cronologia di CVS in maniera completa e accurata, bensì devono essere fatte alcune supposizioni, e le modifiche ai nomi dei file di solito non verranno mostrate. Dato che buona parte dell'amministrazione avanzata di CVS deve essere fatta a mano e quindi è soggetta a errori, i programmi che importano dati da CVS incorrono comunemente in molteplici problemi dovuti a repository danneggiati (marcature temporali completamente fasulle per le revisioni e file che sono rimasti bloccati per più di un decennio sono solo due dei problemi meno interessanti che posso ricordare dalla mia esperienza personale).</para>
   2.108 -
   2.109 +      <para id="x_b8">Mercurial può importare la cronologia di revisione da un repository CVS. Tuttavia, ci sono alcune avvertenze da considerare, valide anche per qualsiasi altro strumento di controllo di revisione che importi dati da CVS. A causa della mancanza di inserimenti atomici in CVS e della mancanza di versioni per la gerarchia dei file, non è possibile ricostruire la cronologia di CVS in maniera completa e accurata, bensì devono essere fatte alcune supposizioni, e le modifiche ai nomi dei file di solito non verranno mostrate. Dato che buona parte dell'amministrazione avanzata di CVS deve essere fatta a mano e quindi è soggetta a errori, i programmi che importano dati da CVS incorrono comunemente in molteplici problemi dovuti a repository danneggiati (marcature temporali completamente fasulle per le revisioni e file che sono rimasti bloccati per più di un decennio sono solo due dei problemi meno interessanti che posso ricordare dalla mia esperienza personale).</para>
   2.110 +<!--
   2.111        <para id="x_b9">Mercurial può importare la cronologia di revisione da un repository CVS.</para>
   2.112 -
   2.113 +-->
   2.114      </sect2>
   2.115      <sect2>
   2.116        <title>Strumenti commerciali</title>
   2.117 @@ -218,7 +218,7 @@
   2.118      <sect2>
   2.119        <title>Scegliere uno strumento di controllo di revisione</title>
   2.120  
   2.121 -      <para id="x_bc">Con l'eccezione di CVS, tutti gli strumenti elencati sopra hanno qualità uniche che li rendono adatti a particolari stili di lavoro. Non esiste un singolo strumento di controllo di revisione che sia il migliore in tutte le situazioni.</para>
   2.122 +      <para id="x_bc">Con l'eccezione di CVS, tutti gli strumenti appena elencati hanno qualità uniche che li rendono adatti a particolari stili di lavoro. Non esiste un singolo strumento di controllo di revisione che sia il migliore in tutte le situazioni.</para>
   2.123  
   2.124        <para id="x_bd">Per fare un esempio, Subversion è una buona scelta per chi lavora con file binari frequentemente modificati, a causa della sua natura centralizzata e del supporto per il bloccaggio dei file.</para>
   2.125  
   2.126 @@ -229,7 +229,7 @@
   2.127    <sect1>
   2.128      <title>Passare da un altro strumento a Mercurial</title>
   2.129  
   2.130 -    <para id="x_bf">Mercurial viene distribuito con un'estensione chiamata <literal role="hg-ext">convert</literal>, che può importare incrementalmente la cronologia delle revisioni da diversi altri strumenti di controllo di revisione. Con <quote>incrementale</quote> voglio dire che potete convertire tutta la cronologia di un progetto in un'unica seduta, poi rieseguire la conversione più tardi per ottenere i nuovi cambiamenti che sono avvenuti dopo la conversione iniziale.</para>
   2.131 +    <para id="x_bf">Mercurial viene distribuito con un'estensione chiamata <literal role="hg-ext">convert</literal> che può importare in maniera incrementale la cronologia delle revisioni da diversi altri strumenti di controllo di revisione. Con <quote>incrementale</quote> voglio dire che potete convertire tutta la cronologia di un progetto in un'unica seduta, poi rieseguire la conversione più tardi per ottenere i nuovi cambiamenti che sono avvenuti dopo la conversione iniziale.</para>
   2.132  
   2.133      <para id="x_c0">Gli strumenti di controllo di revisione supportati da <literal role="hg-ext">convert</literal> sono i seguenti:</para>
   2.134      <itemizedlist>
   2.135 @@ -256,11 +256,11 @@
   2.136  
   2.137      <para id="x_cb">All'inizio degli anni '90, Sun Microsystems sviluppò un primo sistema per il controllo di revisione distribuito chiamato TeamWare. Uno spazio di lavoro in TeamWare contiene una copia completa della cronologia del progetto. TeamWare non possiede alcuna nozione di un repository centrale. (CVS si basava su RCS per la memorizzazione della cronologia, TeamWare usava SCCS.)</para>
   2.138  
   2.139 -    <para id="x_cc">Durante gli anni '90 crebbe la consapevolezza dei numerosi problemi di CVS. CVS registra individualmente cambiamenti simultanei a più di un file, invece di raggrupparli insieme come una singola operazione logicamente atomica; non gestisce bene la sua gerarchia di file, ed è facile danneggiare un repository cambiando i nomi di file e directory. Le difficoltà di lettura e manutenzione del suo codice sorgente resero proibitiva la <quote>soglia del dolore</quote> da oltrepassare per correggere questi problemi architetturali.</para>
   2.140 +    <para id="x_cc">Durante gli anni '90 crebbe la consapevolezza dei numerosi problemi di CVS. CVS registra individualmente cambiamenti simultanei a più di un file, invece di raggrupparli insieme come una singola operazione logicamente atomica, inoltre non gestisce bene la propria gerarchia di file, ed è facile danneggiare un repository cambiando i nomi di file e directory. Le difficoltà di lettura e manutenzione del suo codice sorgente resero proibitiva la <quote>soglia del dolore</quote> da oltrepassare per correggere questi problemi architetturali.</para>
   2.141  
   2.142      <para id="x_cd">Nel 2001, Jim Blandy e Karl Fogel, due sviluppatori che avevano lavorato su CVS, diedero vita a un progetto per sostituirlo con uno strumento che avrebbe avuto un'architettura migliore e un codice più pulito. Il risultato, Subversion, non si allontana dal modello client/server centralizzato di CVS, ma aggiunge inserimenti atomici per più file alla volta, una miglior gestione degli spazi di nomi e un certo numero di altre caratteristiche che lo rendono uno strumento generalmente migliore di CVS. Dal suo rilascio iniziale, la sua popolarità è rapidamente cresciuta.</para>
   2.143  
   2.144 -    <para id="x_ce">Più o meno simultaneamente, Graydon Hoare cominciò a lavorare su un ambizioso sistema distribuito di controllo di revisione che chiamò Monotone. Monotone non si limita a risolvere molti dei problemi di progettazione di CVS e a possedere un'architettura peer-to-peer, ma va oltre ai primi (e ai successivi) strumenti di controllo di revisione in un certo numero di modi innovativi, usando hash crittografici come identificatori e adottando una nozione integrale di <quote>fiducia</quote> per autenticare il codice che proviene da sorgenti differenti.</para>
   2.145 +    <para id="x_ce">Più o meno simultaneamente, Graydon Hoare cominciò a lavorare su un ambizioso sistema distribuito di controllo di revisione che chiamò Monotone. Monotone non si limita a risolvere molti dei problemi di progettazione di CVS e a possedere un'architettura peer-to-peer, ma va oltre i primi (e i successivi) strumenti di controllo di revisione in un certo numero di modi innovativi, usando hash crittografici come identificatori e adottando una nozione integrale di <quote>fiducia</quote> per autenticare il codice che proviene da sorgenti differenti.</para>
   2.146  
   2.147      <para id="x_cf">Mercurial nacque nel 2005. Mentre alcuni aspetti della sua progettazione sono stati influenzati da Monotone, Mercurial si concentra su facilità d'uso, prestazioni elevate e scalabilità verso progetti molto grandi.</para>
   2.148    </sect1>
     3.1 --- a/it/ch02-tour-basic.xml	Tue Aug 18 22:36:35 2009 +0200
     3.2 +++ b/it/ch02-tour-basic.xml	Wed Aug 19 19:39:24 2009 +0200
     3.3 @@ -25,7 +25,7 @@
     3.4  
     3.5        <para id="x_2">Dato che ogni distribuzione Linux ha i propri stumenti di impacchettamento, le proprie politiche e il proprio ritmo di sviluppo, è difficile dare un insieme completo di istruzioni su come installare i pacchetti eseguibili di Mercurial. La versione di Mercurial che finirete per ottenere può variare a seconda di quanto sia attiva la persona che mantiene il pacchetto di installazione per la vostra distribuzione.</para>
     3.6  
     3.7 -      <para id="x_3">Per semplificare le cose, mi concentrerò sull'installazione di Mercurial dalla linea di comando sotto le distribuzioni Linux più popolari. La maggior parte di queste distribuzioni fornisce un gestore grafico per i pacchetti di installazione che vi permetterà di installare Mercurial con un singolo click sulla voce relativa al pacchetto chiamato <literal>mercurial</literal>.</para>
     3.8 +      <para id="x_3">Per semplificare le cose, mi concentrerò sull'installazione di Mercurial dalla linea di comando sulle distribuzioni Linux più popolari. La maggior parte di queste distribuzioni fornisce un gestore grafico per i pacchetti di installazione che vi permetterà di installare Mercurial con un singolo click sulla voce relativa al pacchetto chiamato <literal>mercurial</literal>.</para>
     3.9  
    3.10        <itemizedlist>
    3.11  	<listitem><para id="x_4">Ubuntu e Debian:</para>
    3.12 @@ -71,7 +71,7 @@
    3.13  
    3.14      <para id="x_11">In Mercurial, tutto accade all'interno di un <emphasis>repository</emphasis>. Il repository di un progetto contiene tutti i file che <quote>appartengono</quote> a quel progetto insieme a una registrazione cronologica delle loro modifiche.</para>
    3.15  
    3.16 -    <para id="x_12">Non c'è niente di particolarmente magico in un repository: è semplicemente un albero di directory nel vostro file system che Mercurial tratta in modo speciale. Potete cancellare un repository o modificarne il nome in ogni momento, usando sia la linea di comando sia il vostro programma preferito di gestione dei file.</para>
    3.17 +    <para id="x_12">Non c'è niente di particolarmente magico in un repository: è semplicemente un albero di directory nel vostro file system che Mercurial tratta in modo speciale. Potete cancellare un repository o modificarne il nome in ogni momento, usando sia la riga di comando sia il vostro programma preferito di gestione dei file.</para>
    3.18  
    3.19      <sect2>
    3.20        <title>Fare una copia locale di un repository</title>
    3.21 @@ -120,11 +120,11 @@
    3.22      <itemizedlist>
    3.23        <listitem><para id="x_1e"><literal>changeset</literal>: questo campo ha il formato di un numero, seguito dal carattere di due punti, seguito da una stringa esadecimale. Questi sono gli <emphasis>identificatori</emphasis> del changeset. La stringa esadecimale è un identificatore unico: la stessa stringa esadecimale si riferirà sempre allo stesso changeset in ogni copia di questo repository. Il numero è più corto e facile da digitare rispetto alla stringa esadecimale, ma non è unico: lo stesso numero potrebbe identificare changeset differenti in due cloni differenti di uno stesso repository.</para>
    3.24        </listitem>
    3.25 -      <listitem><para id="x_1f"><literal>user</literal>: l'identità della persona che ha creato il changeset. Questo è un campo di testo libero, ma il più delle volte contiene il nome e l'indirizzo email di una persona.</para></listitem>
    3.26 -      <listitem><para id="x_20"><literal>date</literal>: la data, l'orario e il fuso orario in cui il changeset è stato creato. (La data e l'orario sono locali per quel fuso orario e mostrano il giorno e l'ora per la persona che ha creato il changeset.)</para></listitem>
    3.27 -      <listitem><para id="x_21"><literal>summary</literal>: la prima riga del messaggio di testo che il creatore del changeset ha utilizzato per descrivere il changeset.</para></listitem>
    3.28 +      <listitem><para id="x_1f"><literal>utente</literal> (in inglese, <literal>user</literal>): l'identità della persona che ha creato il changeset. Questo è un campo di testo libero, ma il più delle volte contiene il nome e l'indirizzo email di una persona.</para></listitem>
    3.29 +      <listitem><para id="x_20"><literal>data</literal> (in inglese, <literal>date</literal>): la data, l'orario e il fuso orario in cui il changeset è stato creato. (La data e l'orario sono locali per quel fuso orario e mostrano il giorno e l'ora per la persona che ha creato il changeset.)</para></listitem>
    3.30 +      <listitem><para id="x_21"><literal>sommario</literal> (in inglese, <literal>summary</literal>): la prima riga del messaggio di testo che il creatore del changeset ha utilizzato per descrivere il changeset.</para></listitem>
    3.31        <listitem>
    3.32 -	<para id="x_67d">Alcuni changeset, come il primo della lista mostrata qui sopra, sono contrassegnati da un'etichetta contenuta in un campo <literal>tag</literal>. Un'etichetta è un altro modo di identificare un changeset, dandogli un nome facile da ricordare. (L'etichetta chiamata <literal>tip</literal> è speciale: si riferisce sempre alla modifica più recente nel repository.)</para>
    3.33 +	<para id="x_67d">Alcuni changeset, come il primo della lista mostrata qui sopra, sono contrassegnati da un'etichetta contenuta in un campo <literal>etichetta</literal> (in inglese, <literal>tag</literal>). Un'etichetta è un altro modo di identificare un changeset, dandogli un nome facile da ricordare. (L'etichetta chiamata <literal>tip</literal> è speciale: si riferisce sempre alla modifica più recente nel repository.)</para>
    3.34        </listitem>
    3.35      </itemizedlist>
    3.36  
    3.37 @@ -143,7 +143,7 @@
    3.38      <sect2>
    3.39        <title>Parlare di changeset o revisioni con altre persone</title>
    3.40  
    3.41 -      <para id="x_25">Dato che l'inglese è una lingua notoriamente trasandata e che l'informatica ha una storia consacrata alla confusione terminologica (perché usare un solo termine quando se ne possono usare quattro?), il controllo di revisione usa una varietà di termini ed espressioni per indicare la stessa cosa. Se parlate della cronologia di Mercurial con altre persone, scoprirete che il termine <quote>changeset</quote> è spesso abbreviato in <quote>change</quote> (in italiano, cambiamento) o in <quote>cset</quote> (nella sua forma scritta) e che talvolta ci si riferisce a un changeset chiamandolo <quote>revisione</quote> oppure <quote>rev</quote>.</para>
    3.42 +      <para id="x_25">Dato che l'inglese è una lingua notoriamente trasandata e che l'informatica ha una storia consacrata alla confusione terminologica (perché usare un solo termine quando se ne possono usare quattro?), il controllo di revisione impiega una varietà di termini ed espressioni per indicare la stessa cosa. Se parlate della cronologia di Mercurial con altre persone, scoprirete che il termine <quote>changeset</quote> è spesso abbreviato in <quote>change</quote> (in italiano, cambiamento) o in <quote>cset</quote> (nella sua forma scritta) e che talvolta ci si riferisce a un changeset chiamandolo <quote>revisione</quote> oppure <quote>rev</quote>.</para>
    3.43  
    3.44        <para id="x_26">Mentre non ha importanza quale <emphasis>parola</emphasis> voi usiate per riferirvi al concetto di <quote>un changeset</quote>, l'<emphasis>identificatore</emphasis> che usate per riferirvi a <quote>uno <emphasis>specifico</emphasis> changeset</quote> è di grande importanza. Ricordatevi che il campo <literal>changeset</literal> nel riepilogo mostrato da <command role="hg-cmd">hg log</command> identifica un changeset utilizzando sia un numero che una stringa esadecimale.</para>
    3.45        <itemizedlist>
    3.46 @@ -189,7 +189,7 @@
    3.47    <sect1>
    3.48      <title>Tutto quello che dovete sapere sulle opzioni dei comandi</title>
    3.49  
    3.50 -    <para id="x_30">Facciamo una piccola pausa nella nostra esplorazione dei comandi di Mercurial per discutere lo schema secondo cui quei comandi lavorano, perché potreste trovarlo utile da tenere a mente nel seguito di questa parnoramica.</para>
    3.51 +    <para id="x_30">Facciamo una piccola pausa nella nostra esplorazione dei comandi di Mercurial per discutere lo schema secondo cui quei comandi lavorano, perché potreste trovarlo utile da tenere a mente nel seguito di questa panoramica.</para>
    3.52  
    3.53      <para id="x_31">Mercurial adotta un approccio semplice e consistente per gestire le opzioni che potete passare ai comandi. Segue l'insieme di convenzioni per le opzioni comunemente usato nei moderni sistemi Linux e Unix.</para>
    3.54  
    3.55 @@ -265,7 +265,7 @@
    3.56      <title>Registrare i cambiamenti in un nuovo changeset</title>
    3.57  
    3.58      <para id="x_40">Possiamo modificare i file, compilare e collaudare i nostri cambiamenti, e usare <command role="hg-cmd">hg status</command> e <command
    3.59 -	role="hg-cmd">hg diff</command> per rivisitare le nostre modifiche fino a quando non  siamo soddisfatti di quello che abbiamo ottenuto e arriviamo a un naturale punto fermo in cui vogliamo registrare il nostro lavoro in un nuovo changeset.</para>
    3.60 +	role="hg-cmd">hg diff</command> per rivedere le nostre modifiche fino a quando non  siamo soddisfatti di quello che abbiamo ottenuto e arriviamo a un naturale punto fermo in cui vogliamo registrare il nostro lavoro in un nuovo changeset.</para>
    3.61  
    3.62      <para id="x_41">Il comando <command role="hg-cmd">hg commit</command> ci permette di creare un nuovo changeset. Faremo riferimento a questa operazione con le espressioni <quote>effettuare un commit</quote> o <quote>eseguire un commit</quote> oppure con il termine inglese <quote>commit</quote> e talvolta con il termine italiano <quote>inserimento</quote>.</para>
    3.63  
    3.64 @@ -285,12 +285,12 @@
    3.65        <sect3 id="sec:tour-basic:username">
    3.66  	<title>Creare un file di configurazione per Mercurial</title>
    3.67  
    3.68 -	<para id="x_4a">Per impostare un nome utente, usate il vostro editor preferito e create un file chiamato <filename role="special">.hgrc</filename> nella vostra directory personale. Mercurial userà questo file per cercare le vostre impostazioni di configurazione personalizzate. Il contenuto iniziale del vostro file<filename role="special">.hgrc</filename> dovrebbe somigliare al seguente.</para>
    3.69 +	<para id="x_4a">Per impostare un nome utente, usate il vostro editor preferito e create un file chiamato <filename role="special">.hgrc</filename> nella vostra directory personale. Mercurial userà questo file per cercare le vostre impostazioni di configurazione personalizzate. Il contenuto iniziale del vostro file <filename role="special">.hgrc</filename> dovrebbe somigliare al seguente.</para>
    3.70  
    3.71  	<tip>
    3.72  	  <title>La <quote>directory personale</quote> sotto Windows</title>
    3.73  
    3.74 -	  <para id="x_716">In una installazione italiana di Windows, la vostra directory perosnale di solito corrisponde a una cartella chiamata con il vostro nome utente che si trova in <filename>C:\Documents and Settings</filename>. Potete scoprire l'esatto nome della vostra directory personale aprendo una finestra del prompt dei comandi e invocando il comando seguente.</para>
    3.75 +	  <para id="x_716">In una installazione italiana di Windows, la vostra directory personale di solito corrisponde a una cartella chiamata con il vostro nome utente che si trova in <filename>C:\Documents and Settings</filename>. Potete scoprire l'esatto nome della vostra directory personale aprendo una finestra del prompt dei comandi e invocando il comando seguente.</para>
    3.76  
    3.77  	  <screen><prompt>C:\></prompt> <userinput>echo %UserProfile%</userinput></screen>
    3.78  	</tip>
    3.79 @@ -337,13 +337,13 @@
    3.80  
    3.81        <programlisting>
    3.82  changeset:   73:584af0e231be
    3.83 -user:        Persona Censurata &lt;persona.censurata@example.org&gt;
    3.84 -date:        Tue Sep 26 21:37:07 2006 -0700
    3.85 -summary:     incluso buildmeister/commondef. Aggiunti gli export.</programlisting>
    3.86 +utente:      Persona Censurata &lt;persona.censurata@example.org&gt;
    3.87 +data:        Tue Sep 26 21:37:07 2006 -0700
    3.88 +sommario:    incluso buildmeister/commondef. Aggiunti gli export.</programlisting>
    3.89  
    3.90        <para id="x_52">Non ci sono regole ferree da seguire per quanto riguarda il resto del contenuto del messaggio di commit. Lo stesso Mercurial non interpreta né si occupa del contenuto del messaggio, sebbene il vostro progetto possa adottare politiche che vi obbligano a un certo tipo di formattazione.</para>
    3.91        <para id="x_53">Personalmente, prediligo messaggi di commit brevi ma informativi che mi dicano qualcosa che non sono in grado di capire attraverso una veloce occhiata al risultato del comando <command role="hg-cmd">hg log --patch</command>.</para>
    3.92 -      <para id="x_55">Se eseguiamo <command role="hg-cmd">hg commit</command> senza argomenti, il comando registra tutti i cambiamenti che abbiamo effettuato, come riportati dai comandi <command role="hg-cmd">hg status</command> e <command role="hg-cmd">hg diff</command>.</para>
    3.93 +      <para id="x_55">Se eseguiamo <command role="hg-cmd">hg commit</command> senza argomenti, il comando registra tutti i cambiamenti che abbiamo effettuato, come segnalati dai comandi <command role="hg-cmd">hg status</command> e <command role="hg-cmd">hg diff</command>.</para>
    3.94  
    3.95        <note>
    3.96  	<title>Una sorpresa per gli utenti Subversion</title>
    3.97 @@ -379,11 +379,11 @@
    3.98      <sect2 id="sec:tour:pull">
    3.99        <title>Estrarre i cambiamenti da altri repository</title>
   3.100  
   3.101 -      <para id="x_59">Per cominciare, cloniamo il nostro repository <filename class="directory">hello</filename> originale, che non contiene la modifica che abbiamo appena introdotto. Chiameremo <filename class="directory">hello-pull</filename> il nostro repository temporaneo.</para>
   3.102 +      <para id="x_59">Per cominciare, cloniamo il nostro repository <filename class="directory">hello</filename> originale, che non contiene la modifica che abbiamo appena introdotto. Chiameremo <filename class="directory">hello-estrazione</filename> il nostro repository temporaneo.</para>
   3.103  
   3.104        &interaction.tour.clone-pull;
   3.105  
   3.106 -      <para id="x_5a">Useremo il comando <command role="hg-cmd">hg pull</command> per propagare i cambiamenti dal repository <filename class="directory">mio-hello</filename> al repository <filename class="directory">hello-pull</filename>. Tuttavia, estrarre alla cieca cambiamenti sconosciuti da un repository è una prospettiva che può incutere qualche timore. Mercurial fornisce il comando <command role="hg-cmd">hg incoming</command> proprio allo scopo di elencare quali cambiamenti <emphasis>verrebbero</emphasis> estratti dal repository senza effettivamente procedere con l'operazione.</para>
   3.107 +      <para id="x_5a">Useremo il comando <command role="hg-cmd">hg pull</command> per propagare i cambiamenti dal repository <filename class="directory">mio-hello</filename> al repository <filename class="directory">hello-estrazione</filename>. Tuttavia, estrarre alla cieca cambiamenti sconosciuti da un repository è una prospettiva che può incutere qualche timore. Mercurial fornisce il comando <command role="hg-cmd">hg incoming</command> proprio allo scopo di elencare quali cambiamenti <emphasis>verrebbero</emphasis> estratti dal repository senza effettivamente procedere con l'operazione.</para>
   3.108  
   3.109        &interaction.tour.incoming;
   3.110  
     4.1 --- a/it/ch03-tour-merge.xml	Tue Aug 18 22:36:35 2009 +0200
     4.2 +++ b/it/ch03-tour-merge.xml	Wed Aug 19 19:39:24 2009 +0200
     4.3 @@ -10,10 +10,10 @@
     4.4      <para id="x_339">Le unioni giocano un ruolo fondamentale quando si lavora con uno strumento di controllo di revisione distribuito. Ecco alcuni casi in cui può presentarsi il bisogno di unire tra loro due o più flussi di lavoro.</para>
     4.5      <itemizedlist>
     4.6        <listitem>
     4.7 -	<para id="x_33a">Alice e Bruno hanno ognuno una copia personale di un repository per un progetto su cui stanno collaborando. Mentre Alice corregge un bug nel suo repository, Bruno aggiunge una nuova funzione nel proprio. Entrambi vogliono che il repository condiviso contenga sia la correzione del bug sia la nuova funzione.</para>
     4.8 +	<para id="x_33a">Alice e Bruno hanno entrambi una copia personale di un repository per un progetto su cui stanno collaborando. Mentre Alice corregge un bug nel suo repository, Bruno aggiunge una nuova funzione nel proprio. Entrambi vogliono che il repository condiviso contenga sia la correzione del bug sia la nuova funzione.</para>
     4.9        </listitem>
    4.10        <listitem>
    4.11 -	<para id="x_33b">Cinzia lavora frequentemente su più attività differenti alla volta per un singolo progretto, ognuna isolata al sicuro nel proprio repository. Lavorando in questo modo, Cinzia ha spesso bisogno di unire una parte del proprio lavoro con un'altra.</para>
    4.12 +	<para id="x_33b">Cinzia lavora frequentemente su più attività differenti alla volta per un singolo progetto, ognuna isolata al sicuro nel proprio repository. Lavorando in questo modo, Cinzia ha spesso bisogno di unire una parte del proprio lavoro con un'altra.</para>
    4.13        </listitem>
    4.14      </itemizedlist>
    4.15  
    4.16 @@ -41,7 +41,7 @@
    4.17  
    4.18      &interaction.tour.merge.pull;
    4.19  
    4.20 -    <para id="x_340">Tuttavia, il comando <command role="hg-cmd">hg pull</command> dice qualcosa a proposito di <quote>teste</quote> (in inglese, <quote>heads</quote>).</para>
    4.21 +    <para id="x_340">Tuttavia, il comando <command role="hg-cmd">hg pull</command> dice qualcosa a proposito di <quote>teste</quote> (in inglese, heads).</para>
    4.22  
    4.23      <sect2>
    4.24        <title>Le teste di un repository</title>
    4.25 @@ -111,7 +111,7 @@
    4.26    <sect1>
    4.27      <title>Risolvere i conflitti tra cambiamenti</title>
    4.28  
    4.29 -    <para id="x_34b">La maggior parte delle unioni è semplice, ma talvolta vi troverete a unire cambiamenti in cui ognuna delle due parti modifica le stesse porzioni degli stessi file. A meno che entrambe le modifiche siano identiche, questo risulterà in un <emphasis>conflitto</emphasis> che dovrete cercare di riconciliare decidendo come combinare i diversi cambiamenti in un risultato coerente.</para>
    4.30 +    <para id="x_34b">La maggior parte delle unioni è semplice, ma a volte vi troverete a unire cambiamenti in cui ognuna delle due parti modifica le stesse porzioni degli stessi file. A meno che entrambe le modifiche siano identiche, questa situazione risulterà in un <emphasis>conflitto</emphasis> che dovrete cercare di riconciliare decidendo come combinare i diversi cambiamenti in un risultato coerente.</para>
    4.31  
    4.32      <figure id="fig:tour-merge:conflict">
    4.33        <title>Modifiche in conflitto a un documento</title>
    4.34 @@ -125,7 +125,7 @@
    4.35  
    4.36      <para id="x_34e">Mercurial non è dotato di alcuna funzione predefinita per gestire i conflitti. Invece, richiama un programma esterno, di solito uno che mostra un qualche tipo di interfaccia grafica per la risoluzione dei conflitti, trovato tra i tanti strumenti di unione differenti che è probabile siano installati sul vostro sistema. Come prima cosa, Mercurial prova a cercare alcuni strumenti di unione completamente automatici; poi, se non riesce a trovarli (perché il processo di risoluzione richiede una guida umana) o se non sono presenti, prova a richiamare diversi strumenti grafici di unione.</para>
    4.37  
    4.38 -    <para id="x_34f">&Egrave; anche possibile far eseguire a Mercurial uno specifico programma, impostando il valore della variable di ambiente <envar>HGMERGE</envar> al nome del vostro programma preferito.</para>
    4.39 +    <para id="x_34f">&Egrave; anche possibile far eseguire a Mercurial uno specifico programma, impostando il valore della variable d'ambiente <envar>HGMERGE</envar> al nome del vostro programma preferito.</para>
    4.40  
    4.41      <sect2>
    4.42        <title>Usare uno strumento grafico di unione</title>
    4.43 @@ -208,7 +208,7 @@
    4.44  
    4.45      <para id="x_364">Se fosse possibile, sarebbe comodo ridurre il numero di passi necessari. In effetti, Mercurial viene distribuito con un'estensione chiamata <literal role="hg-ext">fetch</literal> pensata proprio per questo scopo.</para>
    4.46  
    4.47 -    <para id="x_365">Mercurial fornisce un meccanismo flessibile per consentire ad altre persone di estendere le sue funzionalità, preservando le dimensioni ridotte e la manutenibilità del proprio nucleo. Alcune estensioni aggiungono nuovi comandi che potete usare dalla riga di comando, mentre altri lavorano <quote>dietro le quinte</quote>, per esempio accrescendo le funzionalità della modalità server predefinita di Mercurial.</para>
    4.48 +    <para id="x_365">Mercurial fornisce un meccanismo flessibile per consentire ad altre persone di estendere le sue funzionalità, preservando le dimensioni ridotte e la manutenibilità del proprio nucleo. Alcune estensioni aggiungono nuovi comandi che potete usare dalla riga di comando, mentre altre lavorano <quote>dietro le quinte</quote>, per esempio accrescendo la funzionalità della modalità server predefinita di Mercurial.</para>
    4.49  
    4.50      <para id="x_366">L'estensione <literal role="hg-ext">fetch</literal> aggiunge un nuovo comando chiamato, naturalmente, <command role="hg-cmd">hg fetch</command>. Questa estensione agisce come una combinazione di <command role="hg-cmd">hg pull -u</command>, <command role="hg-cmd">hg merge</command> e <command role="hg-cmd">hg commit</command>. Comincia propagando verso il repository corrente i cambiamenti estratti da un altro repository. Se si accorge che i cambiamenti hanno aggiunto una nuova testa al repository, aggiorna la directory di lavoro alla nuova testa, poi avvia il processo di unione e infine, se l'unione ha successo, ne inserisce il risultato nel repository con un messaggio di commit generato automaticamente. Se non sono state aggiunte nuove teste, il comando si limita ad aggiornare la directory di lavoro alla nuova revisione di punta.</para>
    4.51  
     5.1 --- a/it/examples/tour-merge-conflict.commit.it	Tue Aug 18 22:36:35 2009 +0200
     5.2 +++ b/it/examples/tour-merge-conflict.commit.it	Wed Aug 19 19:39:24 2009 +0200
     5.3 @@ -8,12 +8,12 @@
     5.4  <prompt>$</prompt> <userinput>hg commit -m 'Mandatemi i vostri soldi'</userinput>
     5.5  <prompt>$</prompt> <userinput>hg tip</userinput>
     5.6  changeset:   3:df19ae0ef4d4
     5.7 -tag:         tip
     5.8 -parent:      1:ae14113af250
     5.9 -parent:      2:11ab3b2b6d1b
    5.10 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
    5.11 -date:        Fri Jun 05 15:52:13 2009 +0000
    5.12 -summary:     Mandatemi i vostri soldi
    5.13 +etichetta:   tip
    5.14 +genitore:    1:ae14113af250
    5.15 +genitore:    2:11ab3b2b6d1b
    5.16 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
    5.17 +data:        Fri Jun 05 15:52:13 2009 +0000
    5.18 +sommario:    Mandatemi i vostri soldi
    5.19  
    5.20  </screen>
    5.21  <!-- END tour-merge-conflict.commit -->
     6.1 --- a/it/examples/tour-merge-conflict.pull.it	Tue Aug 18 22:36:35 2009 +0200
     6.2 +++ b/it/examples/tour-merge-conflict.pull.it	Wed Aug 19 19:39:24 2009 +0200
     6.3 @@ -5,7 +5,7 @@
     6.4  1 file aggiornati, 0 file uniti, 0 file rimossi, 0 file irrisolti
     6.5  <prompt>$</prompt> <userinput>cd truffa-unione</userinput>
     6.6  <prompt>$</prompt> <userinput>hg pull -u ../truffa-figlio</userinput>
     6.7 -estraggo da ../scam-son
     6.8 +estraggo da ../truffa-figlio
     6.9  cerco i cambiamenti
    6.10  aggiungo i changeset
    6.11  aggiungo i manifest
     7.1 --- a/it/examples/tour-merge-conflict.wife.it	Tue Aug 18 22:36:35 2009 +0200
     7.2 +++ b/it/examples/tour-merge-conflict.wife.it	Wed Aug 19 19:39:24 2009 +0200
     7.3 @@ -4,7 +4,7 @@
     7.4  <prompt>></prompt> <userinput>Sono Mariam Abacha, moglie dell'ex</userinput>
     7.5  <prompt>></prompt> <userinput>dittatore nigeriano Sani Abacha.</userinput>
     7.6  <prompt>></prompt> <userinput>EOF</userinput>
     7.7 -<prompt>$</prompt> <userinput>hg add letter.txt</userinput>
     7.8 +<prompt>$</prompt> <userinput>hg add lettera.txt</userinput>
     7.9  <prompt>$</prompt> <userinput>hg commit -m 'truffa 419, prima bozza'</userinput>
    7.10  </screen>
    7.11  <!-- END tour-merge-conflict.wife -->
     8.1 --- a/it/examples/tour.cat1.it	Tue Aug 18 22:36:35 2009 +0200
     8.2 +++ b/it/examples/tour.cat1.it	Wed Aug 19 19:39:24 2009 +0200
     8.3 @@ -1,7 +1,7 @@
     8.4  <!-- BEGIN tour.cat1 -->
     8.5  <screen><prompt>$</prompt> <userinput>cat hello.c</userinput>
     8.6  /*
     8.7 - * Rilasciato nel pubblico dominio da Bryan O'Sullivan. Questo
     8.8 + * Rilasciato al pubblico dominio da Bryan O'Sullivan. Questo
     8.9   * programma non è protetto da brevetti negli Stati Uniti o in
    8.10   * altri paesi.
    8.11   */
     9.1 --- a/it/examples/tour.cat2.it	Tue Aug 18 22:36:35 2009 +0200
     9.2 +++ b/it/examples/tour.cat2.it	Wed Aug 19 19:39:24 2009 +0200
     9.3 @@ -2,7 +2,7 @@
     9.4  <screen># ... modifichiamo il file ...
     9.5  <prompt>$</prompt> <userinput>cat hello.c</userinput>
     9.6  /*
     9.7 - * Rilasciato nel pubblico dominio da Bryan O'Sullivan. Questo
     9.8 + * Rilasciato al pubblico dominio da Bryan O'Sullivan. Questo
     9.9   * programma non è protetto da brevetti negli Stati Uniti o in
    9.10   * altri paesi.
    9.11   */
    10.1 --- a/it/examples/tour.clone-pull.it	Tue Aug 18 22:36:35 2009 +0200
    10.2 +++ b/it/examples/tour.clone-pull.it	Wed Aug 19 19:39:24 2009 +0200
    10.3 @@ -1,6 +1,6 @@
    10.4  <!-- BEGIN tour.clone-pull -->
    10.5  <screen><prompt>$</prompt> <userinput>cd ..</userinput>
    10.6 -<prompt>$</prompt> <userinput>hg clone hello hello-pull</userinput>
    10.7 +<prompt>$</prompt> <userinput>hg clone hello hello-estrazione</userinput>
    10.8  aggiorno la directory di lavoro
    10.9  2 file aggiornati, 0 file uniti, 0 file rimossi, 0 file irrisolti
   10.10  </screen>
    11.1 --- a/it/examples/tour.clone-push.it	Tue Aug 18 22:36:35 2009 +0200
    11.2 +++ b/it/examples/tour.clone-push.it	Wed Aug 19 19:39:24 2009 +0200
    11.3 @@ -1,6 +1,6 @@
    11.4  <!-- BEGIN tour.clone-push -->
    11.5  <screen><prompt>$</prompt> <userinput>cd ..</userinput>
    11.6 -<prompt>$</prompt> <userinput>hg clone hello hello-push</userinput>
    11.7 +<prompt>$</prompt> <userinput>hg clone hello hello-trasmissione</userinput>
    11.8  aggiorno la directory di lavoro
    11.9  2 file aggiornati, 0 file uniti, 0 file rimossi, 0 file irrisolti
   11.10  </screen>
    12.1 --- a/it/examples/tour.incoming.it	Tue Aug 18 22:36:35 2009 +0200
    12.2 +++ b/it/examples/tour.incoming.it	Wed Aug 19 19:39:24 2009 +0200
    12.3 @@ -1,13 +1,13 @@
    12.4  <!-- BEGIN tour.incoming -->
    12.5 -<screen><prompt>$</prompt> <userinput>cd hello-pull</userinput>
    12.6 +<screen><prompt>$</prompt> <userinput>cd hello-estrazione</userinput>
    12.7  <prompt>$</prompt> <userinput>hg incoming ../mio-hello</userinput>
    12.8  confronto con ../mio-hello
    12.9  cerco i cambiamenti
   12.10  changeset:   5:764347e47e75
   12.11 -tag:         tip
   12.12 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   12.13 -date:        Fri Jun 05 15:51:52 2009 +0000
   12.14 -summary:     Inserisce una riga con un messaggio aggiuntivo.
   12.15 +etichetta:   tip
   12.16 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   12.17 +data:        Fri Jun 05 15:51:52 2009 +0000
   12.18 +sommario:    Inserisce una riga con un messaggio aggiuntivo.
   12.19  
   12.20  </screen>
   12.21  <!-- END tour.incoming -->
    13.1 --- a/it/examples/tour.log-r.it	Tue Aug 18 22:36:35 2009 +0200
    13.2 +++ b/it/examples/tour.log-r.it	Wed Aug 19 19:39:24 2009 +0200
    13.3 @@ -1,27 +1,27 @@
    13.4  <!-- BEGIN tour.log-r -->
    13.5  <screen><prompt>$</prompt> <userinput>hg log -r 3</userinput>
    13.6  changeset:   3:0272e0d5a517
    13.7 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
    13.8 -date:        Sat Aug 16 22:08:02 2008 +0200
    13.9 -summary:     Induce make a generare l'eseguibile finale dal file .o.
   13.10 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   13.11 +data:        Sat Aug 16 22:08:02 2008 +0200
   13.12 +sommario:    Induce make a generare l'eseguibile finale dal file .o.
   13.13  
   13.14  <prompt>$</prompt> <userinput>hg log -r 0272e0d5a517</userinput>
   13.15  changeset:   3:0272e0d5a517
   13.16 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   13.17 -date:        Sat Aug 16 22:08:02 2008 +0200
   13.18 -summary:     Induce make a generare l'eseguibile finale dal file .o.
   13.19 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   13.20 +data:        Sat Aug 16 22:08:02 2008 +0200
   13.21 +sommario:    Induce make a generare l'eseguibile finale dal file .o.
   13.22  
   13.23  <prompt>$</prompt> <userinput>hg log -r 1 -r 4</userinput>
   13.24  changeset:   1:82e55d328c8c
   13.25 -user:        mpm@selenic.com
   13.26 -date:        Fri Aug 26 01:21:28 2005 -0700
   13.27 -summary:     Crea un makefile.
   13.28 +utente:      mpm@selenic.com
   13.29 +data:        Fri Aug 26 01:21:28 2005 -0700
   13.30 +sommario:    Crea un makefile.
   13.31  
   13.32  changeset:   4:2278160e78d4
   13.33 -tag:         tip
   13.34 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   13.35 -date:        Sat Aug 16 22:16:53 2008 +0200
   13.36 -summary:     Aggiusta i commenti.
   13.37 +etichetta:   tip
   13.38 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   13.39 +data:        Sat Aug 16 22:16:53 2008 +0200
   13.40 +sommario:    Aggiusta i commenti.
   13.41  
   13.42  </screen>
   13.43  <!-- END tour.log-r -->
    14.1 --- a/it/examples/tour.log-v.it	Tue Aug 18 22:36:35 2009 +0200
    14.2 +++ b/it/examples/tour.log-v.it	Wed Aug 19 19:39:24 2009 +0200
    14.3 @@ -1,10 +1,10 @@
    14.4  <!-- BEGIN tour.log-v -->
    14.5  <screen><prompt>$</prompt> <userinput>hg log -v -r 3</userinput>
    14.6  changeset:   3:0272e0d5a517
    14.7 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
    14.8 -date:        Sat Aug 16 22:08:02 2008 +0200
    14.9 -files:       Makefile
   14.10 -description:
   14.11 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   14.12 +data:        Sat Aug 16 22:08:02 2008 +0200
   14.13 +file:        Makefile
   14.14 +descrizione:
   14.15  Induce make a generare l'eseguibile finale dal file .o.
   14.16  
   14.17  
    15.1 --- a/it/examples/tour.log-vp.it	Tue Aug 18 22:36:35 2009 +0200
    15.2 +++ b/it/examples/tour.log-vp.it	Wed Aug 19 19:39:24 2009 +0200
    15.3 @@ -1,10 +1,10 @@
    15.4  <!-- BEGIN tour.log-vp -->
    15.5  <screen><prompt>$</prompt> <userinput>hg log -v -p -r 2</userinput>
    15.6  changeset:   2:fef857204a0c
    15.7 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
    15.8 -date:        Sat Aug 16 22:05:04 2008 +0200
    15.9 -files:       hello.c
   15.10 -description:
   15.11 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   15.12 +data:        Sat Aug 16 22:05:04 2008 +0200
   15.13 +file:        hello.c
   15.14 +descrizione:
   15.15  Introduce un errore in hello.c.
   15.16  
   15.17  
    16.1 --- a/it/examples/tour.log.it	Tue Aug 18 22:36:35 2009 +0200
    16.2 +++ b/it/examples/tour.log.it	Wed Aug 19 19:39:24 2009 +0200
    16.3 @@ -1,30 +1,30 @@
    16.4  <!-- BEGIN tour.log -->
    16.5  <screen><prompt>$</prompt> <userinput>hg log</userinput>
    16.6  changeset:   4:2278160e78d4
    16.7 -tag:         tip
    16.8 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
    16.9 -date:        Sat Aug 16 22:16:53 2008 +0200
   16.10 -summary:     Aggiusta i commenti.
   16.11 +etichetta:   tip
   16.12 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   16.13 +data:        Sat Aug 16 22:16:53 2008 +0200
   16.14 +sommario:    Aggiusta i commenti.
   16.15  
   16.16  changeset:   3:0272e0d5a517
   16.17 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   16.18 -date:        Sat Aug 16 22:08:02 2008 +0200
   16.19 -summary:     Induce make a generare l'eseguibile finale dal file .o.
   16.20 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   16.21 +data:        Sat Aug 16 22:08:02 2008 +0200
   16.22 +sommario:    Induce make a generare l'eseguibile finale dal file .o.
   16.23  
   16.24  changeset:   2:fef857204a0c
   16.25 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   16.26 -date:        Sat Aug 16 22:05:04 2008 +0200
   16.27 -summary:     Introduce un errore in hello.c.
   16.28 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   16.29 +data:        Sat Aug 16 22:05:04 2008 +0200
   16.30 +sommario:    Introduce un errore in hello.c.
   16.31  
   16.32  changeset:   1:82e55d328c8c
   16.33 -user:        mpm@selenic.com
   16.34 -date:        Fri Aug 26 01:21:28 2005 -0700
   16.35 -summary:     Crea un makefile.
   16.36 +utente:      mpm@selenic.com
   16.37 +data:        Fri Aug 26 01:21:28 2005 -0700
   16.38 +sommario:    Crea un makefile.
   16.39  
   16.40  changeset:   0:0a04b987be5a
   16.41 -user:        mpm@selenic.com
   16.42 -date:        Fri Aug 26 01:20:50 2005 -0700
   16.43 -summary:     Crea il classico programma "ciao, mondo".
   16.44 +utente:      mpm@selenic.com
   16.45 +data:        Fri Aug 26 01:20:50 2005 -0700
   16.46 +sommario:    Crea il classico programma "ciao, mondo".
   16.47  
   16.48  </screen>
   16.49  <!-- END tour.log -->
    17.1 --- a/it/examples/tour.log.range.it	Tue Aug 18 22:36:35 2009 +0200
    17.2 +++ b/it/examples/tour.log.range.it	Wed Aug 19 19:39:24 2009 +0200
    17.3 @@ -1,20 +1,20 @@
    17.4  <!-- BEGIN tour.log.range -->
    17.5  <screen><prompt>$</prompt> <userinput>hg log -r 2:4</userinput>
    17.6  changeset:   2:fef857204a0c
    17.7 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
    17.8 -date:        Sat Aug 16 22:05:04 2008 +0200
    17.9 -summary:     Introduce un errore in hello.c.
   17.10 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   17.11 +data:        Sat Aug 16 22:05:04 2008 +0200
   17.12 +sommario:    Introduce un errore in hello.c.
   17.13  
   17.14  changeset:   3:0272e0d5a517
   17.15 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   17.16 -date:        Sat Aug 16 22:08:02 2008 +0200
   17.17 -summary:     Induce make a generare l'eseguibile finale dal file .o.
   17.18 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   17.19 +data:        Sat Aug 16 22:08:02 2008 +0200
   17.20 +sommario:    Induce make a generare l'eseguibile finale dal file .o.
   17.21  
   17.22  changeset:   4:2278160e78d4
   17.23 -tag:         tip
   17.24 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   17.25 -date:        Sat Aug 16 22:16:53 2008 +0200
   17.26 -summary:     Aggiusta i commenti.
   17.27 +etichetta:   tip
   17.28 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   17.29 +data:        Sat Aug 16 22:16:53 2008 +0200
   17.30 +sommario:    Aggiusta i commenti.
   17.31  
   17.32  </screen>
   17.33  <!-- END tour.log.range -->
    18.1 --- a/it/examples/tour.merge.cat1.it	Tue Aug 18 22:36:35 2009 +0200
    18.2 +++ b/it/examples/tour.merge.cat1.it	Wed Aug 19 19:39:24 2009 +0200
    18.3 @@ -1,7 +1,7 @@
    18.4  <!-- BEGIN tour.merge.cat1 -->
    18.5  <screen><prompt>$</prompt> <userinput>cat hello.c</userinput>
    18.6  /*
    18.7 - * Rilasciato nel pubblico dominio da Bryan O'Sullivan. Questo
    18.8 + * Rilasciato al pubblico dominio da Bryan O'Sullivan. Questo
    18.9   * programma non è protetto da brevetti negli Stati Uniti o in
   18.10   * altri paesi.
   18.11   */
    19.1 --- a/it/examples/tour.merge.cat2.it	Tue Aug 18 22:36:35 2009 +0200
    19.2 +++ b/it/examples/tour.merge.cat2.it	Wed Aug 19 19:39:24 2009 +0200
    19.3 @@ -1,7 +1,7 @@
    19.4  <!-- BEGIN tour.merge.cat2 -->
    19.5  <screen><prompt>$</prompt> <userinput>cat ../mio-hello/hello.c</userinput>
    19.6  /*
    19.7 - * Rilasciato nel pubblico dominio da Bryan O'Sullivan. Questo
    19.8 + * Rilasciato al pubblico dominio da Bryan O'Sullivan. Questo
    19.9   * programma non è protetto da brevetti negli Stati Uniti o in
   19.10   * altri paesi.
   19.11   */
    20.1 --- a/it/examples/tour.merge.heads.it	Tue Aug 18 22:36:35 2009 +0200
    20.2 +++ b/it/examples/tour.merge.heads.it	Wed Aug 19 19:39:24 2009 +0200
    20.3 @@ -1,16 +1,16 @@
    20.4  <!-- BEGIN tour.merge.heads -->
    20.5  <screen><prompt>$</prompt> <userinput>hg heads</userinput>
    20.6  changeset:   6:764347e47e75
    20.7 -tag:         tip
    20.8 -parent:      4:2278160e78d4
    20.9 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   20.10 -date:        Fri Jun 05 15:51:52 2009 +0000
   20.11 -summary:     Inserisce una riga con un messaggio aggiuntivo.
   20.12 +etichetta:   tip
   20.13 +genitore:    4:2278160e78d4
   20.14 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   20.15 +data:        Fri Jun 05 15:51:52 2009 +0000
   20.16 +sommario:    Inserisce una riga con un messaggio aggiuntivo.
   20.17  
   20.18  changeset:   5:1c343117a2e3
   20.19 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   20.20 -date:        Fri Jun 05 15:52:03 2009 +0000
   20.21 -summary:     Un nuovo saluto per un nuovo giorno.
   20.22 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   20.23 +data:        Fri Jun 05 15:52:03 2009 +0000
   20.24 +sommario:    Un nuovo saluto per un nuovo giorno.
   20.25  
   20.26  </screen>
   20.27  <!-- END tour.merge.heads -->
    21.1 --- a/it/examples/tour.merge.parents.it	Tue Aug 18 22:36:35 2009 +0200
    21.2 +++ b/it/examples/tour.merge.parents.it	Wed Aug 19 19:39:24 2009 +0200
    21.3 @@ -1,20 +1,20 @@
    21.4  <!-- BEGIN tour.merge.parents -->
    21.5  <screen><prompt>$</prompt> <userinput>hg parents</userinput>
    21.6  changeset:   5:1c343117a2e3
    21.7 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
    21.8 -date:        Fri Jun 05 15:52:03 2009 +0000
    21.9 -summary:     Un nuovo saluto per un nuovo giorno.
   21.10 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   21.11 +data:        Fri Jun 05 15:52:03 2009 +0000
   21.12 +sommario:    Un nuovo saluto per un nuovo giorno.
   21.13  
   21.14  changeset:   6:764347e47e75
   21.15 -tag:         tip
   21.16 -parent:      4:2278160e78d4
   21.17 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   21.18 -date:        Fri Jun 05 15:51:52 2009 +0000
   21.19 -summary:     Inserisce una riga con un messaggio aggiuntivo.
   21.20 +etichetta:   tip
   21.21 +genitore:    4:2278160e78d4
   21.22 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   21.23 +data:        Fri Jun 05 15:51:52 2009 +0000
   21.24 +sommario:    Inserisce una riga con un messaggio aggiuntivo.
   21.25  
   21.26  <prompt>$</prompt> <userinput>cat hello.c</userinput>
   21.27  /*
   21.28 - * Rilasciato nel pubblico dominio da Bryan O'Sullivan. Questo
   21.29 + * Rilasciato al pubblico dominio da Bryan O'Sullivan. Questo
   21.30   * programma non è protetto da brevetti negli Stati Uniti o in
   21.31   * altri paesi.
   21.32   */
    22.1 --- a/it/examples/tour.merge.tip.it	Tue Aug 18 22:36:35 2009 +0200
    22.2 +++ b/it/examples/tour.merge.tip.it	Wed Aug 19 19:39:24 2009 +0200
    22.3 @@ -1,12 +1,12 @@
    22.4  <!-- BEGIN tour.merge.tip -->
    22.5  <screen><prompt>$</prompt> <userinput>hg tip</userinput>
    22.6  changeset:   7:e300c3dcceca
    22.7 -tag:         tip
    22.8 -parent:      5:1c343117a2e3
    22.9 -parent:      6:764347e47e75
   22.10 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   22.11 -date:        Fri Jun 05 15:52:07 2009 +0000
   22.12 -summary:     Unisce i cambiamenti.
   22.13 +etichetta:   tip
   22.14 +genitore:    5:1c343117a2e3
   22.15 +genitore:    6:764347e47e75
   22.16 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   22.17 +data:        Fri Jun 05 15:52:07 2009 +0000
   22.18 +sommario:    Unisce i cambiamenti.
   22.19  
   22.20  </screen>
   22.21  <!-- END tour.merge.tip -->
    23.1 --- a/it/examples/tour.older.it	Tue Aug 18 22:36:35 2009 +0200
    23.2 +++ b/it/examples/tour.older.it	Wed Aug 19 19:39:24 2009 +0200
    23.3 @@ -3,18 +3,18 @@
    23.4  2 file aggiornati, 0 file uniti, 0 file rimossi, 0 file irrisolti
    23.5  <prompt>$</prompt> <userinput>hg parents</userinput>
    23.6  changeset:   2:fef857204a0c
    23.7 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
    23.8 -date:        Sat Aug 16 22:05:04 2008 +0200
    23.9 -summary:     Introduce un errore in hello.c.
   23.10 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   23.11 +data:        Sat Aug 16 22:05:04 2008 +0200
   23.12 +sommario:    Introduce un errore in hello.c.
   23.13  
   23.14  <prompt>$</prompt> <userinput>hg update</userinput>
   23.15  2 file aggiornati, 0 file uniti, 0 file rimossi, 0 file irrisolti
   23.16  <prompt>$</prompt> <userinput>hg parents</userinput>
   23.17  changeset:   5:764347e47e75
   23.18 -tag:         tip
   23.19 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   23.20 -date:        Fri Jun 05 15:51:52 2009 +0000
   23.21 -summary:     Inserisce una riga con un messaggio aggiuntivo.
   23.22 +etichetta:   tip
   23.23 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   23.24 +data:        Fri Jun 05 15:51:52 2009 +0000
   23.25 +sommario:    Inserisce una riga con un messaggio aggiuntivo.
   23.26  
   23.27  </screen>
   23.28  <!-- END tour.older -->
    24.1 --- a/it/examples/tour.outgoing.it	Tue Aug 18 22:36:35 2009 +0200
    24.2 +++ b/it/examples/tour.outgoing.it	Wed Aug 19 19:39:24 2009 +0200
    24.3 @@ -1,13 +1,13 @@
    24.4  <!-- BEGIN tour.outgoing -->
    24.5  <screen><prompt>$</prompt> <userinput>cd mio-hello</userinput>
    24.6 -<prompt>$</prompt> <userinput>hg outgoing ../hello-push</userinput>
    24.7 -confronto con ../hello-push
    24.8 +<prompt>$</prompt> <userinput>hg outgoing ../hello-trasmissione</userinput>
    24.9 +confronto con ../hello-trasmissione
   24.10  cerco i cambiamenti
   24.11  changeset:   5:764347e47e75
   24.12 -tag:         tip
   24.13 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   24.14 -date:        Fri Jun 05 15:51:52 2009 +0000
   24.15 -summary:     Inserisce una riga con un messaggio aggiuntivo.
   24.16 +etichetta:   tip
   24.17 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   24.18 +data:        Fri Jun 05 15:51:52 2009 +0000
   24.19 +sommario:    Inserisce una riga con un messaggio aggiuntivo.
   24.20  
   24.21  </screen>
   24.22  <!-- END tour.outgoing -->
    25.1 --- a/it/examples/tour.outgoing.net.it	Tue Aug 18 22:36:35 2009 +0200
    25.2 +++ b/it/examples/tour.outgoing.net.it	Wed Aug 19 19:39:24 2009 +0200
    25.3 @@ -3,10 +3,10 @@
    25.4  confronto con http://hg.serpentine.com/tutorial/hello
    25.5  cerco i cambiamenti
    25.6  changeset:   5:764347e47e75
    25.7 -tag:         tip
    25.8 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
    25.9 -date:        Fri Jun 05 15:51:52 2009 +0000
   25.10 -summary:     Inserisce una riga con un messaggio aggiuntivo.
   25.11 +etichetta:   tip
   25.12 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   25.13 +data:        Fri Jun 05 15:51:52 2009 +0000
   25.14 +sommario:    Inserisce una riga con un messaggio aggiuntivo.
   25.15  
   25.16  </screen>
   25.17  <!-- END tour.outgoing.net -->
    26.1 --- a/it/examples/tour.parents.it	Tue Aug 18 22:36:35 2009 +0200
    26.2 +++ b/it/examples/tour.parents.it	Wed Aug 19 19:39:24 2009 +0200
    26.3 @@ -1,10 +1,10 @@
    26.4  <!-- BEGIN tour.parents -->
    26.5  <screen><prompt>$</prompt> <userinput>hg parents</userinput>
    26.6  changeset:   5:764347e47e75
    26.7 -tag:         tip
    26.8 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
    26.9 -date:        Fri Jun 05 15:51:52 2009 +0000
   26.10 -summary:     Inserisce una riga con un messaggio aggiuntivo.
   26.11 +etichetta:   tip
   26.12 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   26.13 +data:        Fri Jun 05 15:51:52 2009 +0000
   26.14 +sommario:    Inserisce una riga con un messaggio aggiuntivo.
   26.15  
   26.16  </screen>
   26.17  <!-- END tour.parents -->
    27.1 --- a/it/examples/tour.pull.it	Tue Aug 18 22:36:35 2009 +0200
    27.2 +++ b/it/examples/tour.pull.it	Wed Aug 19 19:39:24 2009 +0200
    27.3 @@ -1,10 +1,10 @@
    27.4  <!-- BEGIN tour.pull -->
    27.5  <screen><prompt>$</prompt> <userinput>hg tip</userinput>
    27.6  changeset:   4:2278160e78d4
    27.7 -tag:         tip
    27.8 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
    27.9 -date:        Sat Aug 16 22:16:53 2008 +0200
   27.10 -summary:     Aggiusta i commenti.
   27.11 +etichetta:   tip
   27.12 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   27.13 +data:        Sat Aug 16 22:16:53 2008 +0200
   27.14 +sommario:    Aggiusta i commenti.
   27.15  
   27.16  <prompt>$</prompt> <userinput>hg pull ../mio-hello</userinput>
   27.17  estraggo da ../mio-hello
   27.18 @@ -16,10 +16,10 @@
   27.19  (eseguite 'hg update' per ottenere una copia di lavoro)
   27.20  <prompt>$</prompt> <userinput>hg tip</userinput>
   27.21  changeset:   5:764347e47e75
   27.22 -tag:         tip
   27.23 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   27.24 -date:        Fri Jun 05 15:51:52 2009 +0000
   27.25 -summary:     Inserisce una riga con un messaggio aggiuntivo.
   27.26 +etichetta:   tip
   27.27 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   27.28 +data:        Fri Jun 05 15:51:52 2009 +0000
   27.29 +sommario:    Inserisce una riga con un messaggio aggiuntivo.
   27.30  
   27.31  </screen>
   27.32  <!-- END tour.pull -->
    28.1 --- a/it/examples/tour.push.it	Tue Aug 18 22:36:35 2009 +0200
    28.2 +++ b/it/examples/tour.push.it	Wed Aug 19 19:39:24 2009 +0200
    28.3 @@ -1,6 +1,6 @@
    28.4  <!-- BEGIN tour.push -->
    28.5 -<screen><prompt>$</prompt> <userinput>hg push ../hello-push</userinput>
    28.6 -trasmetto a ../hello-push
    28.7 +<screen><prompt>$</prompt> <userinput>hg push ../hello-trasmissione</userinput>
    28.8 +trasmetto a ../hello-trasmissione
    28.9  cerco i cambiamenti
   28.10  aggiungo i changeset
   28.11  aggiungo i manifest
    29.1 --- a/it/examples/tour.push.nothing.it	Tue Aug 18 22:36:35 2009 +0200
    29.2 +++ b/it/examples/tour.push.nothing.it	Wed Aug 19 19:39:24 2009 +0200
    29.3 @@ -1,6 +1,6 @@
    29.4  <!-- BEGIN tour.push.nothing -->
    29.5 -<screen><prompt>$</prompt> <userinput>hg push ../hello-push</userinput>
    29.6 -trasmetto a ../hello-push
    29.7 +<screen><prompt>$</prompt> <userinput>hg push ../hello-trasmissione</userinput>
    29.8 +trasmetto a ../hello-trasmissione
    29.9  cerco i cambiamenti
   29.10  nessun cambiamento trovato
   29.11  </screen>
    30.1 --- a/it/examples/tour.tip.it	Tue Aug 18 22:36:35 2009 +0200
    30.2 +++ b/it/examples/tour.tip.it	Wed Aug 19 19:39:24 2009 +0200
    30.3 @@ -1,11 +1,11 @@
    30.4  <!-- BEGIN tour.tip -->
    30.5  <screen><prompt>$</prompt> <userinput>hg tip -vp</userinput>
    30.6  changeset:   5:764347e47e75
    30.7 -tag:         tip
    30.8 -user:        Bryan O'Sullivan &lt;bos@serpentine.com&gt;
    30.9 -date:        Fri Jun 05 15:51:52 2009 +0000
   30.10 -files:       hello.c
   30.11 -description:
   30.12 +etichetta:   tip
   30.13 +utente:      Bryan O'Sullivan &lt;bos@serpentine.com&gt;
   30.14 +data:        Fri Jun 05 15:51:52 2009 +0000
   30.15 +file:        hello.c
   30.16 +descrizione:
   30.17  Inserisce una riga con un messaggio aggiuntivo.
   30.18  
   30.19  
    31.1 --- a/it/examples/tour.version.it	Tue Aug 18 22:36:35 2009 +0200
    31.2 +++ b/it/examples/tour.version.it	Wed Aug 19 19:39:24 2009 +0200
    31.3 @@ -5,6 +5,6 @@
    31.4  Copyright (C) 2005-2008 Matt Mackall &lt;mpm@selenic.com&gt; e altri
    31.5  Questo è software libero, si vedano i sorgenti per le condizioni di
    31.6  copia. NON c'è alcuna garanzia, neppure di COMMERCIABILIT&Agrave; o IDONEIT&Agrave;
    31.7 -AD UNO SCOPO PARTICOLARE.
    31.8 +A UNO SCOPO PARTICOLARE.
    31.9  </screen>
   31.10  <!-- END tour.version -->