Come confrontare due file di testo e vedere cosa è cambiato

Il modo più veloce per confrontare due file di testo è incollarli entrambi in uno strumento di diff affiancato e leggere le righe che evidenzia. Verde per ciò che è stato aggiunto, rosso per ciò che è stato rimosso, e una riga modificata compare come una di ciascuno. Nessuna installazione, nessun caricamento, fatto in pochi secondi.

Questo copre la maggior parte dei casi. Ma due file che a schermo sembrano identici possono comunque differire byte per byte, ed è lì che le persone perdono un pomeriggio. Questa guida mostra il metodo rapido, un esempio pratico, le differenze invisibili che vale la pena conoscere e dove un chatbot AI come ChatGPT aiuta davvero. Se vuoi solo lo strumento, la nostra pagina di confronto testo esegue tutto nel tuo browser.

Cosa significa davvero "confrontare due file di testo"

Un file di testo è una sequenza di caratteri divisa in righe. Confrontarne due significa allineare le parti che coincidono e segnalare quelle che non coincidono. Lo strumento classico per questo è l'utility Unix diff, e ogni visualizzatore di diff moderno, incluso il nostro, fa lo stesso lavoro con una presentazione più amichevole.

La maggior parte degli strumenti di diff lavora prima riga per riga. Questo li mantiene veloci sui file lunghi e rispecchia il modo in cui le persone leggono: cerchi la riga che si è spostata, poi guardi al suo interno la parola che è cambiata. Il nostro motore è basato su diff-match-patch di Google, che esegue una passata in modalità riga prima di guardare i singoli caratteri, così anche un log da mille righe viene comparato all'istante.

Modi per confrontare due file di testo

Non esiste un unico metodo giusto. Dipende da dove si trovano i file e da quanto devi essere preciso.

MetodoIdeale perEsatto?Sforzo
Leggerli affiancatiPoche righe, una modifica evidenteIl giudice sei tuBasso
Strumento di diff onlineVerifiche rapide, incollare da qualsiasi fonteSì, esatto al carattereBasso
Riga di comando (diff, git diff)File su disco, scripting, file enormiMedio
Editor di codice (VS Code "Compare")File già aperti nel tuo editorBasso
Chatbot AI (ChatGPT)Un riassunto in linguaggio semplice della modificaNo, può mancare o riformulareBasso

Per un controllo occasionale, uno strumento nel browser vince in velocità perché non c'è nulla da installare e puoi incollare direttamente da una email, un log o una code review. Per i file già tracciati in un repository, git diff è lì a portata di mano. Torneremo sull'opzione AI, perché è davvero utile per il compito giusto e una trappola per quello sbagliato.

Confronta due file di testo nel browser, passo dopo passo

Questa è la routine di quando qualcuno ti manda due versioni di un documento e chiede "cosa è diverso?" Richiede circa dieci secondi.

  1. Apri lo strumento di confronto testo.
  2. Incolla l'originale a sinistra e la nuova versione a destra. Oppure usa Upload per caricare un file direttamente da disco.
  3. Leggi le evidenziazioni. Le righe aggiunte sono verdi, quelle rimosse sono rosse, e una riga che è cambiata compare come una coppia rosso-verde.
  4. Scorri le righe modificate. All'interno di ciascuna sono segnate le parole esatte che differiscono, così non rileggi l'intera riga.
  5. Se i due file sembrano molto più diversi di quanto dovrebbero, salta alla sezione sulle differenze invisibili qui sotto.

Un esempio pratico

Supponiamo che un collega ti rimandi un paragrafo modificato e ti chieda di controllare le sue modifiche. Ecco il tuo originale:

The service starts at 9am on weekdays.
Refunds are processed within 14 days.
Contact [email protected] for help.

Ed ecco la sua versione:

The service starts at 8am on weekdays.
Refunds are processed within 30 days.
Contact [email protected] for help.
Priority support is available on request.

Butta entrambi nel diff e la storia reale è breve, anche se è facile sorvolarci sopra nel testo:

Cosa è cambiato davvero
RigaPrimaDopoModifica
Orario di inizio9am8amModificato
Finestra di rimborso14 days30 daysModificato
Linea di supporto[email protected][email protected]Nessuna modifica
Supporto prioritarionessunoPriority support is available on request.Aggiunto

Due numeri sono cambiati ed è stata aggiunta una frase. La finestra di rimborso che raddoppia da 14 a 30 days è il tipo di modifica che vuoi cogliere prima che vada in produzione, ed è a un solo carattere dal diventare invisibile in una lettura veloce. È tutto qui il motivo per fare il diff del testo invece di fidarti dei tuoi occhi.

Le differenze invisibili che mettono in difficoltà le persone

A volte un diff dipinge due file come completamente diversi quando sullo schermo sembrano identici. La causa è quasi sempre un carattere che non riesci a vedere. Ecco i soliti sospetti.

Differenza invisibileDa dove vieneCosa fare
Fine riga: CRLF vs LFUn file è stato salvato su Windows, l'altro su macOS o LinuxNormalizza le fine riga; vedi le convenzioni sulle newline
Spazi finaliSpazi o tabulazioni lasciati alla fine di una rigaRimuovi gli spazi finali, o ignorali se il tuo strumento può farlo
Un byte order mark (BOM)Un editor ha aggiunto un marcatore invisibile alla prima rigaSalva come UTF-8 senza BOM
Tabulazioni vs spaziEditor diversi o impostazioni di indentazione diverseScegline uno e converti; sullo schermo sembrano uguali
Codifica del testoUn file è UTF-8, l'altro Latin-1, quindi i caratteri accentati differiscono nei byteRisalva entrambi come UTF-8
Spazi unificatori (non-breaking)Incollati da una pagina web o da un word processorTrovali e sostituiscili con spazi normali

Quella che morde più forte è la fine riga. Un file Windows usa un ritorno a capo più un avanzamento di riga (CRLF) alla fine di ogni riga; un file Mac o Linux usa solo un avanzamento di riga (LF). Aprili entrambi nello stesso editor e sembrano uguali, ma ogni singola riga differisce a livello di byte, quindi un diff ingenuo si illumina come un albero di Natale. Se l'intero file risulta modificato, controlla prima questo.

ChatGPT può confrontare due file?

Sì, e molte persone ora fanno esattamente questo: incollano due versioni in ChatGPT (o un altro assistente AI) e chiedono "cosa è cambiato?" Per file brevi funziona bene e ti dà qualcosa che un diff semplice non può: un riassunto in linguaggio ordinario. "The refund window went from 14 to 30 days and a priority-support line was added" è spesso più utile per un lettore di fretta di un muro di rosso e verde.

Il problema è la precisione. Un modello linguistico non è un algoritmo di diff. Può mancare una modifica di un solo carattere, riformulare in silenzio una riga mentre la riassume, o esaurire lo spazio su un file lungo e saltare la parte centrale. Significa anche consegnare il tuo testo a una terza parte, cosa che potresti non volere per qualcosa di sensibile. Quindi i due tipi di strumento sono complementari, non rivali.

Un buon flusso di lavoro: passa prima i file attraverso uno strumento di diff deterministico per ottenere l'elenco esatto e accurato al carattere delle modifiche, poi incolla quel breve elenco in un chatbot AI e chiedigli di spiegare l'impatto in linguaggio semplice. Ottieni l'accuratezza di un diff e la leggibilità di un riassunto, senza affidare a nessuno dei due il lavoro dell'altro.

Confrontare file da riga di comando

Se i file sono già su disco, il comando integrato diff è una sola riga:

diff old.txt new.txt

Aggiungi -u per il formato unificato che usa Git, oppure -w per ignorare le differenze di spaziatura. Per i file in un repository, git diff old.txt new.txt fa lo stesso con colore ed evidenziazione a livello di parola. Lo strumento nel browser è la versione senza terminale di questo: incolla, leggi, fatto.

Strumenti correlati

Il testo semplice è raramente l'unica cosa che confronti. Se i tuoi file sono strutturati, una vista consapevole del formato si legge meglio: confronta JSON gestisce le chiavi riordinate e il rumore dell'indentazione, e confronta CSV allinea righe e colonne. Ripulire un elenco disordinato prima di farne il diff è un compito per rimuovi righe duplicate e ordina righe.

Domande frequenti

Confrontare file di testo online li carica da qualche parte?
Su comparetext.org il confronto viene eseguito nel tuo browser. Entrambi i file vengono comparati da JavaScript sulla tua macchina, quindi nulla viene inviato a un server a meno che tu non clicchi deliberatamente su Salva o Condividi. Questo lo rende sicuro per bozze, contratti, configurazioni e qualsiasi altra cosa che non vorresti incollare in un sito che carica tutto a ogni battuta di tasto.
Perché i miei due file di testo mostrano ogni riga come diversa?
Quasi sempre è una questione di fine riga. Un file è stato salvato su Windows (CRLF) e l'altro su macOS o Linux (LF), quindi ogni riga differisce a livello di byte anche se sembrano identiche. Un byte order mark (BOM) nascosto sulla prima riga o tabulazioni contro spazi possono fare lo stesso. Normalizza le fine riga e risalva entrambi come UTF-8, poi rifai il diff.
Posso confrontare due file di testo senza installare nulla?
Sì. Apri lo strumento di confronto testo, incolla un file a sinistra e l'altro a destra, oppure usa Upload per caricarli da disco. Il diff appare all'istante, direttamente nel browser, con le righe modificate evidenziate. Non c'è nulla da scaricare e nessun account da creare.
ChatGPT può confrontare due file al posto mio?
Può farlo, ed è comodo per un riassunto in linguaggio semplice di cosa è cambiato nei file brevi. Ma un modello linguistico non è un algoritmo di diff: può mancare una piccola modifica, riformulare una riga mentre la riassume, o saltare la parte centrale di un file lungo. Per un confronto esatto e accurato al carattere usa uno strumento di diff, poi passa il risultato a un'AI se vuoi che te lo spieghi a parole.
Come confronto due file ignorando gli spazi?
Da riga di comando, diff -w old.txt new.txt ignora le differenze di spaziatura, e diff -b ignora le variazioni nella quantità di spazi. In un browser, rimuovi gli spazi finali e normalizza le fine riga prima di incollare, dato che sono queste le variazioni di spaziatura che più spesso ingombrano un diff. L'obiettivo è lasciare solo le modifiche che cambiano il significato.
Qual è la differenza tra confrontare testo e confrontare codice?
La meccanica è la stessa: entrambi allineano le righe corrispondenti e segnalano il resto. La differenza è cosa conta come modifica reale. Nella prosa, un paragrafo ricomposto può sembrare una grande modifica quando si è spostata solo una parola. Nel codice, l'indentazione e una funzione spostata contano. Una vista consapevole del formato come confronto JSON o un editor consapevole del linguaggio riducono quel rumore per i file strutturati.

Pronto a provarlo? Incolla i tuoi due file nello strumento di confronto testo e vedi cosa è cambiato.