GitProgrammazione

Git – sistema di controllo versione

Git è un VCS gratuito e open source che permette di tenere traccia delle modifiche apportate ai file e cartelle di un progetto. Tenendo traccia di tutte le modifiche in un repository si può ‘navigare indietro nel tempo’ e ripristinare uno o più file o ripristinare un’intera cartella.

Oltre al repository centrale ciascun programmatore mantiene un repository locale indipendente dagli altri, ecco le caratteristiche principali:

  • collaborare con altre persone;
  • visualizzare versioni precedenti di file e cartelle;
  • confrontare due differenti versioni dello stesso file e capire quali modifiche sono state apportate e chi è l’autore dei cambiamenti;
  • si integra con altri strumenti per l’esecuzione di test e rilascio nuove versioni di un software;
  • aggiungere nuove funzionalità ad un progetto isolando le modifiche;

Possiamo scaricare la nostra versione git adatta al nostro sistema operativo qui.

Per verificare che tutto è andato a buon fine apriamo una finestra terminale e digitiamo git –version ci dovrebbe restituire la versione installata

Per modificare le configurazione possiamo utilizzare il comando: git config [opzioni]

  • inserire il proprio nome: git config –global user.name ‘Nome Cognome’
  • inserire l’email: git config –global user.email [email protected]
  • elenco impostazioni: git config –global –list
  • inizializzare un repository, all’interno della cartella del progetto: git init

Possiamo pensare di dividere le aree di lavoro in tre parti:

  • Working Directory: area in cui sono presenti i file e le cartelle del progetto di una specifica versione;
  • Staging Area: un file all’interno della cartella .git e contiene tutte le informazioni relative ai file inseriti nel repository;
  • Local Repository: struttura dati che memorizza le diverse istantanee dei file precedentemente inseriti nella Staging Area;

Possiamo vedere la nostra Working Directory digitando il comando: git status

Il comando ci informa che i file presenti non sono stati aggiunti nella Staging Area e quindi non presente all’interno del Repository. Il comando git add [opzioni] ci permette di aggiungere i nostri file nella Staging Area, in questo esempio aggiungo tutti i file.

Notiamo che non è stato inserito il file gradlew quindi possiamo rilanciare il comando git add gradlew per aggiungerlo. il comando git status ci segnala anche che i file sono pronti per essere inseriti nel Repository tramite il comando git commit, è importante inserire una nota esplicativa utilissima a tutti i membri del team tramite l’opzione -m.

Rilanciando il comando git status possiamo verificare che non ci sono altre modifiche al nostro progetto di cui non è già a conoscenza.

Se successivamente aggiungiamo un file git status ci segnale le modifiche non presenti nella Staging Area. Quindi procediamo ad aggiungerlo nella Staging Area e successivamente inserirlo nel Repository.

Infine possiamo visualizzare tutti i commit presenti all’interno del nostro Repository tramite il comando git log

Per verificare se un file presente nella Working Area ha subito delle modifiche, rispetto alla versione presente nella Staging Area, possiamo lanciare il comando git status; git diff da delle informazioni in più (la frase scritta in verde è la modifica effettuata).