Introduzione a Git Tools

Abbiamo strumenti super efficaci disponibili con git che possono rendere efficace il monitoraggio della nostra versione, in modo da fornire un significato più profondo al sistema di controllo della versione. Questi strumenti automatizzati ci salveranno dalla maggior parte delle attività difficili e dal tracciamento mentre lavoriamo sulle filiali.

Alcuni casi in cui gli strumenti git hanno aiutato molto possono essere trovati in dettaglio di seguito:

Vari strumenti Git

Alcune delle aree in cui gli strumenti git possono essere applicati in modo efficace:

  • Selezione della revisione
  • Staging interattivo
  • Riporre e pulire
  • Firma il tuo lavoro
  • Strumenti per la ricerca - Grep
  • Riscrivi la storia
  • Strumenti per l'unione avanzata
  • Strumenti per il debug
  • Git Submodule ecc

1. Selezione della revisione

Uno degli strumenti più efficaci per lavorare su commit. Siamo in grado di tenere traccia dei commit che abbiamo eseguito e di poterli fare riferimento anche sulla base dei nostri requisiti. Esistono due modi con cui possiamo raggiungere un impegno.

  • Impegni singoli o individuali
  • Commette intervallo

Single of Individual Commits: Ogni volta che commettiamo qualcosa in git, verrà generata la chiave hash SHA - 1 corrispondente e sulla base di questa chiave possiamo riferirgli un semplice comando git show. SHA - 1 chiave viene generata dall'algoritmo di hashing che accetta input e genera un valore hash di 160 bit o 20 byte

  • Di seguito è possibile vedere un'immagine di esempio in cui git log presenta tutte le prese d'aria eseguite sul ramo e possiamo fare riferimento a un commit specifico con il suo valore hash particolare. Qui mi riferisco a commit_test2. Possiamo usare anche la notazione in forma abbreviata nel comando show e git identificherà la sua chiave e fornirà i suoi dettagli. Come sotto:

  • Allo stesso modo, possiamo usare flogs e HEAD con git per ottenere i dettagli di ogni evento, come mostrato nello screenshot qui sotto. Il primo evento sul ramo è definito HEAD o Master.


Specifica commit intervallo: possiamo specificare anche i commit intervallo usando il comando show. Questo è molto utile quando abbiamo più filiali e vogliamo sapere dove si stanno unendo, ecc.

  • Da sopra refA si riferisce al ramo A e refB si riferisce al punto B. La prima istruzione sopra rappresenta l'intervallo di commit tra il ramo di riferimento A e B mentre il secondo intervallo di commit che non è nell'intervallo di rami A e B. La terza affermazione nella schermata sopra è simile alla seconda.

2. Messa in scena interattiva

  • Con uno strumento di stadiazione interattivo, puoi giocare o aggiungere più significato ai tuoi commit. È possibile selezionare quali modifiche devono essere messe in scena e quali non lo sono. Questo particolare strumento è utile quando abbiamo apportato modifiche a un numero di file ma non siamo certi di alcune modifiche. Pertanto, invece di eseguire il commit di tutto questo strumento di gestione temporanea interattiva, è possibile impegnare solo i file o le parti richiesti all'interno del file decidendo cosa deve essere messo in scena e non messo in scena.
  • Nella schermata seguente abbiamo quattro file non messi in scena e con la stadiazione interattiva usando le opzioni interattive di git add -I o git add-ho aggiunto solo due file alla messa in scena e i restanti due file non sono ancora messi in scena. In questo modo possiamo facilmente eseguire il commit dei file in fasi e continuare a lavorare sulle modifiche ai file non in scena e eseguire il commit in un secondo momento.
  • Dobbiamo usare l'opzione di aggiornamento (u o 2) in ciò che ora >> prompt o aggiungere i file alla messa in scena.

  • Se osservi il primo screenshot dopo l'aggiornamento >> 2, 3, possiamo vedere che nella 2a e 3a riga * è contrassegnato il simbolo che indica il file o la parte selezionata da mettere in scena e se premi di nuovo entra, queste 2 e 3 verranno messe in scena. Nel prossimo commit, i file in scena saranno impegnati.

  • Allo stesso modo, possiamo usare altri strumenti interattivi come revert (3 o r) per ripristinare le modifiche apportate al file, diff (6 o d) per ottenere la differenza o la modifica nel file, come mostrato nella schermata sopra. Ho applicato diff sul file news1 in cui rosso mostra la modifica rimossa e in verde quella appena aggiunta. Allo stesso modo, le opzioni di patch possono essere utilizzate per mettere in scena solo alcune parti di un determinato file, non il file completo.

3. Riporre e pulire

  • Alcune volte potremmo dover cambiare le filiali per lavorare su qualcos'altro e non vogliamo impegnare le modifiche fatte su lavori a metà lavoro, ma le modifiche devono essere tracciate e salvate. La soluzione sta usando uno strumento di stashing git. Git stash raccoglierà tutti i file e i luoghi tracciati e tracciati in una pila in modo che possiamo riapplicare le modifiche ogni volta che vogliamo lavorarci di nuovo.
  • Se applico lo stato git alla mia attuale directory di lavoro, appare come sotto screenshot:

  • Qui abbiamo messo in scena due file e i file rimanenti non sono messi in scena. Ora, quando applico git stash, tutte le mie modifiche che vengono monitorate, cioè messe in scena e non messe in scena, verranno spostate di uno stack di memoria con ID di scorta, come mostrato nella schermata seguente

  • Una volta applicato stash e lo stato git, possiamo vedere che non c'è nulla da impegnare sul ramo e tutte le mie modifiche sono state spostate. Possiamo vedere le versioni stash che abbiamo in memoria con il comando git stash list come mostrato di seguito.

  • Possiamo avere due versioni di dati stash salvati nello stack e possiamo ripristinarli applicando il comando git stash apply che applicherà lo stash dello stack superiore. Se vogliamo applicare una particolare scorta, possiamo inviarla e mostrarla nella seguente schermata.

  • Ho applicato (0) e i miei file sono stati applicati di nuovo. Ma c'è una grande differenza quando ho applicato la scorta. Puoi osservare che prima di applicare stash due dei miei file sono stati messi in scena e non sono stati messi in scena. Ma dopo aver applicato e riapplicato la scorta, tutti i miei file non sono messi in scena. Stash non si occuperà dei file messi in scena o non messi in scena. Aggiunge tutto allo stato non messo in scena. E anche dopo aver applicato lo stash rimarrà nella memoria dello stack.

  • Dobbiamo menzionare esplicitamente il comando drop di git stack. In alternativa, possiamo anche usare git status pop per applicare lo stash e rilasciarlo all'istante.

  • Puoi vedere dall'alto screengrab che ho lasciato cadere (0) e nella lista, possiamo vedere (1) che avevo precedentemente tornerà allo stack superiore (0)

  • Puoi vedere l'uso del comando pop nello screenshot qui sopra dove sto applicando (1) e rilasciandolo in una volta sola con il comando pop. Nell'elenco di git stash, potevi vedere che prima avevo due versioni di stash, ma ora solo una da quando ne sono state eliminate altre.
  • Simile allo stash che presenta una directory di lavoro pulita, riponendo i file modificati nello stack, possiamo usare anche il comando git clean. Ma qui non saremo in grado di salvare o riapplicare nulla indietro e dobbiamo stare attenti e certi durante l'utilizzo di questo. Spesso è meglio preferire lo stash piuttosto che pulito. Ci sono anche diverse opzioni secondarie durante l'utilizzo di git clean che possiamo esplorare.

Conclusione

Questi sono alcuni degli strumenti che hanno reso il nostro lavoro disordinato sui rami molto più semplice e ci sono anche altri strumenti, in particolare Submodule, Debug, Advanced Merge, ecc. Che possono aiutarci di più in varie situazioni mentre lavoriamo anche sui rami.

Articoli consigliati

Questa è una guida a Git Tools. Qui discutiamo la spiegazione dettagliata di vari strumenti Git. Puoi anche consultare i nostri altri articoli correlati per saperne di più-

  1. Cos'è Git Branch?
  2. Che cos'è Git?
  3. Terminologia Git
  4. Comandi GIT
  5. Sistema di controllo versione GIT
  6. Git Push
  7. Tre fasi del ciclo di vita di Git con il flusso di lavoro

Categoria: