• Programmazione Android
  • CORSI ONLINE
  • Web Agency

Logo

Corsi di programmazione web e mobile online
Navigation
  • Home
  • CORSI ONLINE
  • Tutorial Pratici
  • GUIDE COMPLETE
    • Corso completo di C
    • Corso videogame con Cocos2d
    • Programmazione Cocoa Touch
  • Sezioni
    • Libri e manuali
    • Tips & Tricks
    • Risorse utili
    • Strumenti di Sviluppo
    • Materiale OpenSource
    • Framework
    • Guide Teoriche
    • Guide varie
    • Grafica e Design
    • iPad
    • News
    • Video Tutorial
    • Windows Phone
  • Pubblicità
  • About
    • Chi siamo
    • Pubblicazioni
    • Collabora
    • Sostieni devAPP

Git: differenze tra file

By Giuseppe Maggi | on 26 Aprile 2017 | 0 Comment
Senza categoria
logo git

Lavorando con Git, come abbiamo visto nei tutorial precedenti, si creano contemporaneamente più copie, differenti tra loro, dello stesso file tra area di lavoro, staging area e repository: quello che vogliamo imparare in questa lezione è a tracciarne le differenze.

Per lo scopo che ci prefiggiamo, esiste il comando git diff che può essere utilizzato per valutare:

  • le differenze tra un file nella cartella di lavoro e la sua versione indicizzata nella staging area (quindi parliamo di un file che ha subito modifiche dopo il comando git add):
    > git diff nome_file
  • le differenze tra la versione nel repository locale e quella nella cartella di lavoro (nel caso di modifiche dopo il commit):
    > git diff HEAD nome_file

Ciò con cui si deve prendere confidenza è il formato con cui viene espresso l’output. Lo vedremo con un esempio molto semplice.

Immaginiamo che nella nostra cartella di lavoro, creiamo il file lista-spesa.txt dal seguente contenuto:

latte 2 litri
12 uova
carote 1 kg
mele 3 kg

lo tracciamo con git add e lo modifichiamo così (versione presente nella cartella di lavoro):

latte 3 litri
carote 1 kg
mele   3 kg
banane 6

Invochiamo a questo punto git diff per ottenere una descrizione delle modifiche tra area di lavoro e versione indicizzata. Ecco l’ouput:

diff --git a/lista-spesa.txt b/lista-spesa.txt
index 1c6e5a6..1ef1777 100644
--- a/lista-spesa.txt
+++ b/lista-spesa.txt
@@ -1,4 +1,4 @@
-latte 2 litri
-12 uova
+latte 3 litri
 carote 1 kg
-mele 3 kg
+mele   3 kg
+banane 6

Notiamo per prima cosa la notazione @@ -1,4 +1,4 @@. Serve ad indicare le porzioni interessate dalle modifiche nei due file: l’espressione -1,4 indica una porzione di quattro righe a partire dalla prima della versione nella staging area mentre +1,4 la porzione analoga nel file attualmente salvato nella directory di lavoro.

Tutte le righe successive potranno iniziare:

  • con uno spazio bianco se la riga non è stata interessata da modifiche;
  • con un segno meno per la versione della riga presente nella staging area;
  • con un simbolo più per la versione della riga presente nel file della cartella di lavoro.

Il comando git diff come vediamo completa le informazioni di git status. Entrambi sono fondamentali e dobbiamo apprezzarne il senso proprio perchè ci permettono di tenere sotto controllo il nostro flusso di lavoro con git.

Alla prossima lezione!

Share this story:
  • tweet

Tags: alternativa a svngittutorial gitTutorial Praticiversion control system

Recent Posts

  • Parte il percorso programmatori iOS in Swift su devACADEMY.it

    20 Dicembre 2017 - 0 Comment
  • Android, crittografare dati velocemente con Encryption

    24 Settembre 2018 - 0 Comment
  • Sql2o, accesso immediato ai database tramite Java

    3 Settembre 2018 - 0 Comment
  • Okio, libreria per ottimizzare l’input/output in Java

    27 Agosto 2018 - 0 Comment

Related Posts

  • Git: come condividere progetti su GitHub

    10 Luglio 2017 - 0 Comment
  • Gist: cosa sono e come usarli

    19 Maggio 2017 - 1 Comment
  • Git: ignorare liste di file con .gitignore

    12 Maggio 2017 - 0 Comment

Author Description

No Responses to “Git: differenze tra file”

Leave a Reply

Your email address will not be published. Required fields are marked *


*
*

Corso online di programmazione android e java

SEZIONI

  • Android
  • Comunicazioni
  • Contest
  • Corsi ed Eventi
  • Corso completo di C
  • Corso programmazione videogiochi
  • Framework
  • Grafica e Design
  • Guida rapida alla programmazione Cocoa Touch
  • Guide Teoriche
  • Guide varie
  • iPad
  • Le nostre applicazioni
  • Libri e manuali
  • Materiale OpenSource
  • News
  • Pillole di C++
  • Progetti completi
  • Risorse utili
  • Strumenti di Sviluppo
  • Swift
  • Tips & Tricks
  • Tutorial Pratici
  • Video Tutorial
  • Windows Phone

Siti Amici

  • Adrirobot
  • Allmobileworld
  • Apple Notizie
  • Apple Tribù
  • Avvocato360
  • Blog informatico 360°
  • bubi devs
  • fotogriPhone
  • GiovaTech
  • iApp-Mac
  • iOS Developer Program
  • iPodMania
  • MelaRumors
  • Meritocracy
  • SoloTablet
  • TecnoUser
  • Privacy & Cookie Policy
©2009-2018 devAPP - All Rights Reserved | Contattaci
devAPP.it è un progetto di DEVAPP S.R.L. - Web & Mobile Agency di Torino
Str. Volpiano, 54 - 10040 Leini (TO) - C.F. e P.IVA 11263180017 - REA TO1199665 - Cap. Soc. € 10.000,00 i.v.

devACADEMY.it

Vuoi imparare a programmare?

Iscriviti e accedi a TUTTI i corsi con un’unica iscrizione.
Oltre 70 corsi e migliaia di videolezioni online e in italiano a tua disposizione.

ISCRIVITI SUBITO