python confronta due file
Funzioni e metodi Python
Michael Zippo
31.10.2021
Il comando git diff mostra le differenze tra i file in due commit o tra il tuo repository attuale e un commit precedente. Questo comando visualizza le modifiche denotate da intestazioni e metadati per i file che sono stati modificati.
Quando lavori con il sistema di controllo della versione di Git, potresti voler confrontare i dati nel tuo repository con un altro fonte di dati. Ad esempio, potresti voler confrontare due commit diversi tra loro o due file.
Ecco dove entra in gioco la funzione diff. Diffing è una funzione che accetta due input e presenta le modifiche esistenti tra quelle fonti di dati. Le funzioni diff possono essere eseguite su branch, file e commit.
Questo tutorial discuterà, con esempi, le basi del diffing con Git e come usare il comando git diff. Alla fine della lettura di questo tutorial, sarai un esperto nell’uso del comando git diff.
Comando Git Diff
Il comando git diff mostra le differenze tra i file in due commit o tra un commit e il tuo attuale repository. Puoi vedere quale testo è stato aggiunto, rimosso e modificato in un file.
Ecco la sintassi per il comando git diff:
Per impostazione predefinita, il comando git diff mostra tutte le modifiche non salvate al tuo repository.
Possiamo vedere le righe rimosse dal nostro file originale cosi come tutte le righe aggiunte o modificate nel nostro file originale. Spesso, Git diff viene utilizzato per confrontare i rami in un repository Git.
L’81% dei partecipanti ha dichiarato di sentirsi più sicuro delle proprie prospettive di lavoro nel settore tecnologico dopo aver partecipato a un bootcamp. Fatti abbinare a un bootcamp oggi.
Il laureato medio di un bootcamp ha trascorso meno di sei mesi nella transizione di carriera, dall’avvio di un bootcamp alla ricerca del primo lavoro.
Puoi confrontare i file tra due Git commit specificando il nome del riferimento che si riferisce ai commit che vuoi confrontare. Un riferimento può essere un ID commit o HEAD, che fa riferimento al ramo corrente.
Confrontiamo due commit nel nostro repository Git.
Per farlo, devi prima recuperare l’ID dei commit di cui hai vuole confrontare. Puoi eseguire questa attività utilizzando il comando git log ‚Äìpretty=oneline, che restituisce un breve riepilogo di tutti i commit in un repository:
Questo comando restituisce:
Git Diff Between Branches
Per confrontare due Git branch utilizzando il comando diff, specifica i due rami che vuoi confrontare come argomenti. Devi usare due punti tra ogni nome di ramo. Questi punti indicano che vuoi leggere l’ultimo commit in ciascuno dei rami e confrontarli:
Supponiamo di volevo confrontare il ramo "master" con un ramo chiamato "dev-v0.9" nel nostro repository. Potremmo farlo usando questo comando:
Quando questo comando viene eseguito, verrà eseguito un diff tra "master" e " dev-v0.9" nel nostro codebase.
Analogamente, puoi confrontare file specifici in due rami diversi. quindi, puoi usare la stessa sintassi di cui sopra e inoltre specificare il file che vuoi confrontare.
Supponiamo di voler confrontare il file README.md con il nostro "master" e "dev-v0.9" rami. Potremmo farlo usando questo codice:
Questo confronterà il file README.md (che si trova nella nostra directory corrente, indicata dalla sintassi "./") attraverso il file "master" e "dev-v0.9" branch.
Esempio di comando Git Diff
Supponiamo di aver inizializzato un repository vuoto e di voler avviare il nostro repository con un file README.md. Abbiamo creato un file README.md nel nostro repository che contiene la seguente frase:
Questo è un esempio della funzione Git diff.
Prepara file e commit
Creeremo un commit con questo file usando il comando git commit:
Questo ci permette di salvare le modifiche che abbiamo apportato al nostro repository. Il comando git restituisce:
Se eseguiamo il comando git diff in questa fase, non accadrà nulla. Questo perché il nostro repository è stato inizializzato e non ci sono modifiche tra i file nel nostro repository. Ora che abbiamo un repository di base, possiamo modificare il contenuto dei file nel nostro repository. Questo ci permetterà di vedere il comando git diff in azione.
Supponiamo di voler aggiungere la frase "Abbiamo appena aggiunto questa riga al nostro file." nel file README.md. Potremmo farlo usando questo comando:
"Carriera Karma è entrato nella mia vita quando ne avevo più bisogno e mi ha aiutato rapidamente ad abbinarmi a un bootcamp. Due mesi dopo la laurea, ho trovato il lavoro dei miei sogni in linea con i miei valori e obiettivi nella vita!"
Venus, Software Engineer presso Rockbot
Il comando sopra aggiunge la nostra frase al file README.md.
Ciò significa che ora c’è una differenza tra il nostro file README.md iniziale e il file README.md corrente nel nostro repository.
Eseguendo il comando git diff, possiamo vedere le differenze tra questi due file. Per impostazione predefinita, il comando git diff produce una differenza per tutti i file tra l’ultimo commit e lo stato corrente del repository.
Questo è un esempio della funzione Git diff.
Questo è un tipico risultato del comando git diff. Il nostro risultato mostra cosa è stato aggiunto o rimosso in il nostro file in un formato diff combinato.
Il comando git diff restituisce un elenco di tutte le modifiche in tutti i file tra il nostro ultimo commit e il nostro repository corrente.
Se lo desideri recuperare le modifiche apportate a un file specifico in un repository, è possibile specificare quel file come terzo parametro. Supponiamo di voler vedere solo le modifiche apportate al file README.md.
In questo esempio, abbiamo modificato solo il file README.md, quindi solo quelle modifiche verrebbero comunque mostrate. Ma se stessimo lavorando con un repository più grande, potremmo voler confrontare solo le modifiche in un file. Per farlo, potremmo usare questo comando:
Questo comando ci permette di confrontare la nostra versione attuale del file README.md con l’ultima versione impegnata nel nostro repository.
Git diffs presenta un numero di componenti che possiamo utilizzare per analizzare le modifiche tra un file in un repository. Analizziamoli, facendo riferimento al nostro esempio precedente.
Stiamo confrontando il file README.md nella versione corrente del nostro codice con il file README.md nell’ultima versione del nostro codice. Questo è indicato nella prima riga del nostro codice: