Git

Git Lägg till alla modifierade filer

Git Lägg till alla modifierade filer
När du har att göra med Git add har du flera alternativ att lägga till alla modifierade filer. Låt oss titta på några scenarier för att förstå möjligheterna.

Låt oss initiera ett nytt projekt.

$ mkdir-projekt
 
$ cd-projekt
 
$ git init
Initierat tomt Git-arkiv i / Användare / zakh_eecs / _work / LearnGIT / git_add / projekt /.git /
 
$ echo "Nytt projekt"> ReadMe.Text
 
$ git lägg till ReadMe.Text
 
$ git commit -m "Initial Commit"
[master (root-commit) 47b9af1] Initialt åtagande
1 fil ändrad, 1 infogning (+)
skapa läge 100644 ReadMe.Text

I detta projekt har vi lagt till en ReadMe.txt-fil. Vi använde kommandot "git add" för att lägga till ReadMe.Text. Kommandot lägg till är inte bara för att lägga till filer. Det lägger också till alla filändringar. För denna handledning lägger vi till och tar bara bort filer för att hålla det enkelt. Men tänk på kommandot add som att lägga till ändringar i iscensättningsområdet. Då måste du använda kommandot commit för att göra ändringarna officiella.

När du har att göra med många filer och mappar är det svårt att lägga till varje ändring individuellt. Så du kan använda följande kommandon:

$ git add .
$ git add -A

Låt oss titta på hur de två kommandona beter sig:

$ touch a.txt b.txt c.Text
 
$ git add .
 
$ git-status
På filialmästaren
Ändringar som ska göras:
(använd "git reset HEAD ... "för att avbryta scenen)
 
ny fil: a.Text
ny fil: b.Text
ny fil: c.Text
 
$ git commit -m "Lägg till en.txt, b.txt, c.Text"
[master 9ca90fc] Lägg till en.txt, b.txt, c.Text
3 filer har ändrats, 0 infogningar (+), 0 raderingar (-)
skapa läge 100644 a.Text
skapa läge 100644 b.Text
skapa läge 100644 c.txt $ touch x.txt y.txt z.Text
 
$ git add -A
 
$ git-status
På filialmästaren
Ändringar som ska göras:
(använd "git reset HEAD ... "för att avbryta scenen)
 
ny fil: x.Text
ny fil: y.Text
ny fil: z.Text
 
$ git commit -m "Lägg till x.txt, y.txt, z.Text"
[master 8af8c12] Lägg till x.txt, y.txt, z.Text
3 filer har ändrats, 0 infogningar (+), 0 raderingar (-)
skapa läge 100644 x.Text
skapa läge 100644 y.Text
skapa läge 100644 z.Text

Båda alternativen verkar fungera på samma sätt.

För att undersöka ytterligare, låt oss skapa en situation där vi lägger till något på arbetsnivåns rotnivå och sedan lägger till fler filer i en mapp:

$ touch 1.Text
 
$ mkdir ny
 
$ cd ny
 
$ touch m.txt n.txt o.Text
 
$ git add .
 
$ git-status
På filialmästaren
Ändringar som ska göras:
(använd "git reset HEAD ... "för att avbryta scenen)
 
ny fil: m.Text
ny fil: n.Text
ny fil: o.Text
 
Ospårade filer:
(använd "git add ... "att inkludera i vad som kommer att åtagas)
 
... / 1.Text

Observera Git lade inte till 1.txt-filen i mappen på högre nivå.

Om vi ​​skapade en mapp som heter kapslad med d.txt-fil och använd git add. kommandot igen, vi ser att o.txt har lagts till men 1.txt har inte lagts till ännu.

$ mkdir kapslade
 
$ touch kapslad / d.Text
 
$ git add .
 
$ git-status
På filialmästaren
Ändringar som ska göras:
(använd "git reset HEAD ... "för att avbryta scenen)
 
ny fil: m.Text
ny fil: n.Text
ny fil: kapslad / d.Text
ny fil: o.Text
 
Ospårade filer:
(använd "git add ... "att inkludera i vad som kommer att åtagas)
 
... / 1.Text

Låt oss nu använda kommandot git add -A:

$ git add -A
 
$ git-status
På filialmästaren
Ändringar som ska göras:
(använd "git reset HEAD ... "för att avbryta scenen)
 
ny fil: ... / 1.Text
ny fil: m.Text
ny fil: n.Text
ny fil: kapslad / d.Text
ny fil: o.Text

Nu, 1.txt i mappen har lagts till iscensättningsområdet.
Så här ser mapparna ut

projekt
| --1.Text
| --Läs mig.Text
| --a.Text
| --b.Text
| --c.Text
| --x.Text
| --y.Text
| --z.Text
'- nytt
| --m.Text
| --n.Text
| --o.Text
'- kapslad
| --d.Text

Så när du använder “git add .”-Kommandot kommer det att lägga till alla ändringar från den nivån. Men när du använder alternativet "git add -A" kommer det att leta efter modifieringar i hela modulen och lägga till dem.

Slutsats

Kommandot Git add ger kraftfulla sätt att lägga till modifierade filer. Du kan använda dina naturliga kataloghierarkier för att kontrollera vad som läggs till.

Ytterligare studier:

  • https: // git-scm.com / docs / git-add
  • Git: Lär dig versionskontroll med Git: En steg-för-steg-guide för nybörjare
  • Versionskontroll med Git: Kraftfulla verktyg och tekniker för gemensam mjukvaruutveckling
  • Pro Git, 2: a upplagan
Hur man använder GameConqueror Cheat Engine i Linux
Artikeln täcker en guide om hur du använder GameConqueror-fuskmotorn i Linux. Många användare som spelar spel på Windows använder ofta applikationen "...
Bästa spelkonsolemulatorer för Linux
Den här artikeln listar populära spelkonsolemuleringsprogram som finns tillgängliga för Linux. Emulation är ett mjukvarukompatibilitetsskikt som emule...
Bästa Linux Distros för spel 2021
Linux-operativsystemet har kommit långt från sitt ursprungliga, enkla, serverbaserade utseende. Detta operativsystem har förbättrats enormt de senaste...