Alustetaan uusi projekti.
$mkdirhanke
$CDhanke
$git init
Alustettu tyhjä Git -arkistosisään /Käyttäjät/zakh_eecs/_työ/LearnGIT/git_add/hanke/.mennä/
$heitti pois 'Uusi projekti' >ReadMe.txt
$git lisääReadMe.txt
$git sitoutua -m 'Alkuperäinen sitoumus'
[hallita(juurisitoumus)47b9af1]Alkuperäinen sitoumus
1 tiedostomuuttunut,1lisäys(+)
luontitila100644ReadMe.txt
Tässä projektissa olemme lisänneet ReadMe.txt -tiedoston. Käytimme git add -komentoa ReadMe.txt -tiedoston lisäämiseen. Add -komento ei ole vain tiedostojen lisäämiseen. Se lisää myös kaikki tiedoston muutokset. Tässä opetusohjelmassa lisäämme ja poistamme vain tiedostoja, jotta se olisi yksinkertainen. Mutta ajattele add -komentoa lisäämällä muutoksia pysähdysalueelle. Sitten sinun on käytettävä komentoa tehdäksesi muutokset virallisiksi.
Kun käsittelet paljon tiedostoja ja kansioita, on vaikea lisätä jokaista muutosta erikseen. Voit siis käyttää seuraavia komentoja:
$git lisää.
$git lisää -TO
Katsotaanpa, miten nämä kaksi komentoa toimivat:
$ touch a.txt b.txt c.txt
$ git lisää.
$ git -tila
Haaran mestari
Muutokset, jotka on tehtävä:
(käytä 'git reset HEAD ...' poistamiseen)
uusi tiedosto: a.txt
uusi tiedosto: b.txt
uusi tiedosto: c.txt
$ git sitoutua -m 'Lisää a.txt, b.txt, c.txt'
[master 9ca90fc] Lisää a.txt, b.txt, c.txt
3 tiedostoa muutettu, 0 lisäystä (+), 0 poistoa (-)
luontitila 100644 a.txt
luontitila 100644 b.txt
luontitila 100644 c.txt $kosketusx.txt y.txt z.txt
$git lisää -TO
$git -tila
Haaran mestari
Muutokset, jotka on tehtävä:
(käyttää'nollaa PÄÄ ...'lavastamaan)
uusi tiedosto: x.txt
uusi tiedosto: y.txt
uusi tiedosto: z.txt
$git sitoutua -m 'Lisää x.txt, y.txt, z.txt'
[päällikkö 8af8c12]Lisää x.txt, y.txt, z.txt
3tiedostot vaihdettu,0lisäyksiä(+),0poistot(-)
luontitila100644x.txt
luontitila100644y.txt
luontitila100644z.txt
Molemmat vaihtoehdot näyttävät toimivan samalla tavalla.
Jotta voimme tutkia tarkemmin, luodaan tilanne, jossa lisäämme jotain työhakemiston juuritasolle ja lisäämme sitten tiedostoja kansioon:
$kosketus 1.txt
$mkdirUusi
$CDUusi
$kosketusm.txt n.txt o.txt
$git lisää.
$git -tila
Haaran mestari
Muutokset, jotka on tehtävä:
(käyttää'nollaa PÄÄ ...'lavastamaan)
uusi tiedosto: m.txt
uusi tiedosto: n.txt
uusi tiedosto: o.txt
Seuraamattomat tiedostot:
(käyttää'lisätään ...'sisällyttääsisäänmitä tehdään)
../1.txt
Huomaa, että Git ei lisännyt 1.txt -tiedostoa ylemmän tason kansioon.
Jos loimme kansion nimeltä nested with d.txt file and use git add. Komento uudelleen, näemme, että o.txt on lisätty, mutta 1.txt ei ole vielä lisätty.
$mkdirsisäkkäin$kosketussisäkkäin/d.txt
$git lisää.
$git -tila
Haaran mestari
Muutokset, jotka on tehtävä:
(käyttää'nollaa PÄÄ ...'lavastamaan)
uusi tiedosto: m.txt
uusi tiedosto: n.txt
uusi tiedosto: sisäkkäin/d.txt
uusi tiedosto: o.txt
Seuraamattomat tiedostot:
(käyttää'lisätään ...'sisällyttääsisäänmitä tehdään)
../1.txt
Käytämme nyt git add -A -komentoa:
$git lisää -TO$git -tila
Haaran mestari
Muutokset, jotka on tehtävä:
(käyttää'nollaa PÄÄ ...'lavastamaan)
uusi tiedosto: ../1.txt
uusi tiedosto: m.txt
uusi tiedosto: n.txt
uusi tiedosto: sisäkkäin/d.txt
uusi tiedosto: o.txt
Nyt kansion 1.txt on lisätty pysähdysalueelle.
Näin kansiot näyttävät
| --1.txt
| --ReadMe.txt
| --a.txt
| --b.txt
|-. txt
| --x.txt
| --y.txt
| --z.txt
`- uusi
| --m.txt
| --n.txt
| --o.txt
`- sisäkkäin
| --d.txt
Joten kun käytät git add. komento, se lisää kaikki muutokset tältä tasolta. Mutta kun käytät git add -A -vaihtoehtoa, se etsii muutoksia koko moduulista ja lisää niitä.
Johtopäätös
Git add -komento tarjoaa tehokkaita tapoja lisätä muokattuja tiedostoja. Voit käyttää koodiesi luonnollista hakemistohierarkiaa hallitaksesi lisättävää.