Git legg til alle modifiserte filer

Git legg til alle modifiserte filer
Når du har å gjøre med Git Add, har du flere alternativer for å legge til alle modifiserte filer. La oss se på noen få scenarier for å forstå mulighetene.

La oss initialisere et nytt prosjekt.

$ MKDIR -prosjekt
$ CD -prosjekt
$ git init
Initialisert tom Git -depot i/brukere/zakh_eecs/_work/learngit/git_add/prosjekt/.git/
$ ekko "Nytt prosjekt"> Readme.tekst
$ git Legg til Readme.tekst
$ git commit -m "initial commit"
[Master (Root-Commit) 47B9AF1] Innledende forpliktelse
1 Fil endret, 1 innsetting (+)
Opprett modus 100644 Readme.tekst

I dette prosjektet har vi lagt til en readme.txt -fil. Vi brukte kommandoen "git add" for å legge til readme.tekst. ADD -kommandoen er ikke bare for å legge til filer. Den legger også til enhver filmodifisering. For denne opplæringen vil vi bare legge til og slette filer for å holde det enkelt. Men tenk på add -kommandoen som å legge til endringer i iscenesettelsesområdet. Deretter må du bruke Commit -kommandoen for å gjøre endringene offisielle.

Når du har å gjøre med mange filer og mapper, er det vanskelig å legge til hver endring individuelt. Så du kan bruke følgende kommandoer:

$ git Legg til .
$ git add -a

La oss se på hvordan de to kommandoene oppfører seg:

$ berøring a.txt b.txt c.tekst
$ git Legg til .
$ git status
På grenmester
Endringer som skal forpliktet:
(Bruk "Git Reset Head ..." til Unsage)
Ny fil: a.tekst
Ny fil: B.tekst
Ny fil: C.tekst
$ git commit -m "Legg til en.txt, b.txt, c.tekst"
[master 9ca90fc] Legg til en.txt, b.txt, c.tekst
3 filer endret, 0 innsettinger (+), 0 slettinger (-)
Opprett modus 100644 a.tekst
Opprett modus 100644 B.tekst
Opprett modus 100644 C.tekst
$ berøring x.txt y.txt z.tekst
$ git add -a
$ git status
På grenmester
Endringer som skal forpliktet:
(Bruk "Git Reset Head ..." til Unsage)
Ny fil: x.tekst
Ny fil: y.tekst
Ny fil: z.tekst
$ git commit -m "Legg til x.txt, y.txt, z.tekst"
[Master 8af8c12] Legg til x.txt, y.txt, z.tekst
3 filer endret, 0 innsettinger (+), 0 slettinger (-)
Opprett modus 100644 x.tekst
Opprett modus 100644 y.tekst
Opprett modus 100644 z.tekst

Begge alternativene ser ut til å fungere de samme.

For å undersøke nærmere, la oss skape en situasjon der vi legger til noe på rotnivået til arbeidskatalogen og deretter legger til flere filer i en mappe:

$ berøring 1.tekst
$ mkdir ny
$ CD NY
$ berøring m.txt n.txt o.tekst
$ git Legg til .
$ git status
På grenmester
Endringer som skal forpliktet:
(Bruk "Git Reset Head ..." til Unsage)
Ny fil: m.tekst
Ny fil: n.tekst
Ny fil: o.tekst
Ikke -sporede filer:
(Bruk "git add ..." for å inkludere i det som vil bli begått)
… /1.tekst

Legg merke til at Git ikke la til 1.txt -filen i mappen på høyere nivå.

Hvis vi opprettet en mappe kalt nestet med D.txt -fil og bruk Git Legg til. kommando igjen, vi ser at o.TXT er lagt til, men 1.TXT er ikke lagt til ennå.

$ mkdir nestet
$ berøring nest/d.tekst
$ git Legg til .
$ git status
På grenmester
Endringer som skal forpliktet:
(Bruk "Git Reset Head ..." til Unsage)
Ny fil: m.tekst
Ny fil: n.tekst
Ny fil: nestet/d.tekst
Ny fil: o.tekst
Ikke -sporede filer:
(Bruk "git add ..." for å inkludere i det som vil bli begått)
… /1.tekst

La oss nå bruke Git Add -A -kommandoen:

$ git add -a
$ git status
På grenmester
Endringer som skal forpliktet:
(Bruk "Git Reset Head ..." til Unsage)
Ny fil:… /1.tekst
Ny fil: m.tekst
Ny fil: n.tekst
Ny fil: nestet/d.tekst
Ny fil: o.tekst

Nå, 1.TXT i mappen er lagt til i iscenesettelsesområdet.
Slik ser mappene ut

prosjekt
| --1.tekst
|-README.tekst
| --a.tekst
|--B.tekst
|--C.tekst
| --x.tekst
| --y.tekst
| --z.tekst
'- Ny
|--m.tekst
| --n.tekst
| --O.tekst
'- nestet
| ---D.tekst

Så når du bruker “Git Legg til .”Kommando, det vil legge til alle endringene fra det nivået. Men når du bruker alternativet "git add -a" vil det se etter endringer i hele modulen og legge til dem.

Konklusjon

Git Add -kommandoen gir kraftige måter å legge til endrede filer. Du kan bruke kodene dine naturlige kataloghierarki for å kontrollere hva som blir lagt til.

Videre studier:

  • https: // git-cm.com/docs/git-add
  • Git: Lær versjonskontroll med Git: En trinn-for-trinns Ultimate Beginners Guide
  • Versjonskontroll med Git: Kraftige verktøy og teknikker for samarbeidsprogramvareutvikling
  • Pro git, 2. utgave