Gestire le modifiche ai file con Git

Idiota funziona in un modo interessante per portare a cronologia delle modifiche ai file. Anche se può sembrare che cerchi i cambiamenti in ognuno di questi, quello che fa in realtà è portare un file chiamato indice, in cui vengono inserite le modifiche che si stanno verificando. In questo modo, semplicemente leggendo il file indice puoi sapere quali file e quale contenuto al loro interno è stato modificato.

Una volta compreso quel concetto di come Idiota Prende le modifiche registrate, è quando possiamo iniziare a sfruttare appieno lo strumento, poiché è in questo momento in cui saremo in grado di iniziare a utilizzare i diversi comandi per prendere le modifiche dal nostro repository e gestirle da una logica prospettiva.

Classificare i file all'interno di Git


Prima di continuare con punti più profondi, dobbiamo vedere come Idiota classifica i tuoi file. Questo non significa una classificazione per tipo di file a causa della sua estensione, ma piuttosto per il suo stato in relazione al nostro repository e ai suoi indice.

Fondamentalmente abbiamo tre tipi di file in IDIOTA, ognuno ha il suo momento all'interno del repository, vediamo quali sono:

tracciatoQuesto tipo di file è già stato aggiunto al nostro repository ed è preso in considerazione dal indice e un file assume questo stato una volta che lo abbiamo aggiunto con il seguente comando.

 git aggiungi nome file
IgnoratoIn questa classificazione un file ignorato non è preso in considerazione da Idiota Quando si apportano modifiche, i file che subiscono molte modifiche o che non sono vitali per la stabilità del progetto vengono normalmente classificati in questo modo, ad esempio file di immagine a causa del loro peso o forse script di Banca dati che non dobbiamo sempre modificare. Per ignorare un file, il suo nome deve essere incluso in un file chiamato .gitignore e aggiungilo al nostro repository.

non tracciatoQuesto tipo di file non appartiene ancora al nostro repository perché non l'abbiamo ancora aggiunto ed è nuovo nel file system, di solito accade quando creiamo un nuovo file in un repository già inizializzato o quando inizializziamo un repository in una cartella che ha file esistenti.

Esempio pratico di classificazione dei file


Vediamo ora un piccolo esempio pratico di come possiamo rilevare i tipi di file in un repository Idiota, per questo dobbiamo seguire i seguenti passaggi:

1- Creeremo una nuova cartella sul nostro computer chiamata file git.

2- Una volta creata la cartella, la inseriremo dalla nostra console e lì eseguiremo il comando git init e poi lo facciamo stato git Per vedere lo stato del nostro repository, vediamo come si presenta l'applicazione dei comandi precedenti:

3- Quando avremo completato il passaggio precedente avremo un repository Git inizializzato e pronti per funzionare, quindi possiamo creare un nuovo file in quella cartella e lo faremo di nuovo stato git per vedere il cambiamento, dobbiamo avere il nostro nuovo file sotto la classificazione non tracciato.

4- Ripeteremo il passaggio precedente e creeremo un nuovo file, se vediamo il risultato di farlo di nuovo stato git conteremo entrambi i file, vediamo:

5- Ora creeremo un nuovo file chiamato .gitignore, nota il punto prima del file e all'interno inseriremo il nome di uno dei nostri file precedenti, lo facciamo di nuovo stato git e vedremo che ora otteniamo solo il file che non è in esso .gitignore e il file .gitignore abbiamo appena creato:

6- Allora faremo un git add. per aggiungere tutti i nostri file e infine eseguiremo a git commit -m "commit iniziale" con questo aggiungendo i nostri file al repository, se apportiamo una modifica al file che non inseriamo all'interno del .gitignore e lo salviamo, se corriamo di nuovo stato git vedremo un file in stato o classificazione tracciato.

Il comando git add


Nell'esempio precedente abbiamo potuto vedere l'uso di git add e forse possiamo pensare che sia un comando in più del nostro strumento ma questo è molto importante, è quello che ci permette aggiungi un file al nostro repository se non esiste ancora in esso e ci consente anche di aggiungere le modifiche che sono avvenute a un file esistente nel nostro repository.

Come usare?Ha alcuni modi per essere usato, il più comune è farlo git aggiungi nome file, dove gli diciamo quale file aggiungere o se non possiamo farlo git add. dove il punto rappresenta tutti i file che sono stati modificati o non sono nel repository.

È molto importante che dopo aver apportato modifiche al repository aggiungiamo i file con git add, poiché altrimenti non saremo in grado di salvare le nostre modifiche, oltre a creare versioni diverse del file, che possono portare a un possibile conflitto in futuro.

Usando git add


Dentro la nostra cartella file git che abbiamo creato nell'esempio precedente del tutorial, aggiungeremo un nuovo file che posizioneremo nuovoFile3 e poi nel file esistente che non è in esso .gitignore facciamo un cambiamento.

Quello che vogliamo ottenere con questo è testare come usare il nostro comando git add, vediamo come appare nella nostra console dei comandi:

Dopo aver seguito le istruzioni precedenti, dovremmo avere qualcosa di simile a quanto sopra sullo schermo, dove ci viene mostrato un file modificato e un file nuovo di zecca nel deposito.

Ora aggiungeremo il nuovo file al repository, ma non lo faremo con il file esistente o con quello che abbiamo modificato in precedenza. Per questo non ci resta che fare git aggiungi il nostro nomefile. Allora lo faremo stato git. Vediamo:

Come possiamo vedere, il nostro repository tiene già conto del file con cui abbiamo aggiunto git add, questo è il modo in cui possiamo sostanzialmente lavorare sulle modifiche ai nostri file.

Elimina i file dal repository


La prossima azione che dobbiamo sapere come eseguire è eliminare i file dal nostro repository, poiché è molto comune che abbiamo creato qualcosa per errore o stiamo semplicemente mettendo le cose in ordine al suo interno.

Ci sono due cose da tenere in considerazione, possiamo rimuovere il file dall'indice del nostro repository ma manteniamo detto file nel sistema della nostra cartella, quindi se facciamo un stato git Lo vedremo nuovamente disponibile. O se non possiamo eliminare il file sia dalla nostra cartella che da indice dal nostro repository, per questo possiamo usare il comando git rm.

Il comando git rm - -cached


Usando il comando rm con l'opzione aggiuntiva di memorizzato nella cache, quello che facciamo è eliminare il file in questione dal indiceTuttavia, lo terremo sul nostro computer, questo comando è molto utilizzato quando non vogliamo ancora aggiungere questo file al nostro repository ma dobbiamo salvare le altre modifiche.

Per usarlo basta eseguire il comando quando abbiamo già aggiunto con git add alcuni file, vediamo come appare nella nostra console dei comandi:

Notiamo che il file nuovoFile3 che avevamo aggiunto al nostro repository ora non c'è e ha la classificazione non tracciato.

Il comando Git rm


Ora vediamo come usare il comando git rm, questo comando è molto più potente poiché rimuove direttamente il file dal indice e del file, ecco perché dobbiamo stare attenti quando decidiamo di usarlo nel nostro repository, è molto probabile che una volta applicato non saremo in grado di recuperare la modifica.

Vediamo nell'esempio seguente come funziona quando lo applichiamo a un file, in questo caso andremo ad aggiungere nuovoFile3 insieme a git add e poi ci applicheremo su questo git rm:

Lo vediamo quando lo facciamo direttamente idiota ci mostra un errore e ci chiede di eseguire un'eliminazione forzata durante l'aggiunta del parametro -F alle istruzioni questo è dovuto all'importanza del cambiamento, finalmente faremo un stato git e noteremo che detto file è scomparso dal nostro repository nella sua interezza.

Altro da .gitignore


Potremmo vedere che possiamo aggiungere un file specifico al nostro file .gitignoreTuttavia, quando lavoriamo in un ambiente in cui gestiamo centinaia o forse migliaia di file, non è molto pratico, ecco perché possiamo usare i modelli.

Uno schema ci permetterà di indicare a Idiota che un file che soddisfi la sequenza di caratteri o espressione debba essere ignorato, con questo possiamo indicare estensioni specifiche, sia nell'intero progetto che all'interno di una cartella speciale. Diamo un'occhiata a un esempio di questo.

* .jpg.webp ignorerà tutti i file .jpg.webp del nostro progetto, ma se vogliamo mantenere la traccia di uno in particolare non ci resta che aggiungere:

 !nomefile.jpg.webp
È così semplice, abbiamo una struttura forte e complessa che ci consente di mantenere organizzato il nostro repository.

Con questo finiamo questo tutorial, abbiamo visto in modo estensivo il modo in cui Idiota trasporta o gestisce le modifiche nei nostri file, è importante padroneggiare questa materia, poiché con questo saremo in grado di lavorare in modo più efficiente negli ambienti di squadra in cui viene gestito Idiota come controller di versione.

wave wave wave wave wave