Inicializuokime naują projektą.
$ mkdir projektas$ cd projektas
$ git init
Inicijuota tuščia „Git“ saugykla aplanke / Vartotojai / zakh_eecs / _work / LearnGIT / git_add / project /.git /
$ echo „Naujas projektas“> „ReadMe“.txt
$ git add ReadMe.txt
$ git įsipareigoti -m "Pradinis įsipareigojimas"
[meistras (šaknis-įsipareigoti) 47b9af1] Pradinis įsipareigojimas
1 failas pakeistas, 1 įterpimas (+)
sukurti režimą 100644 „ReadMe“.txt
Šiame projekte mes pridėjome „ReadMe“.txt failas. Norėdami pridėti „ReadMe“, naudojome komandą „git add“.txt. Komanda pridėti nėra skirta tik failams pridėti. Tai taip pat prideda bet kokius failo pakeitimus. Šioje pamokoje pridėsime ir ištrinsime tik failus, kad tai būtų paprasta. Bet pagalvokite apie komandą „Add“ kaip apie pakeitimo vietą. Tada, norėdami padaryti pakeitimus oficialius, turite naudoti komandą „committ“.
Kai susiduriate su daugybe failų ir aplankų, sunku atskirai pridėti kiekvieną pakeitimą. Taigi galite naudoti šias komandas:
$ git pridėti .$ git pridėti -A
Pažvelkime, kaip elgiasi dvi komandos:
$ palieskite a.txt b.txt c.txt$ git pridėti .
$ git būsena
Filialo kapitonas
Pakeitimai, kuriuos reikia atlikti:
(naudokite "git reset HEAD
naujas failas: a.txt
nauja byla: b.txt
naujas failas: c.txt
$ git įsipareigoti -m "Pridėti a.txt, b.txt, c.txt "
[meistras 9ca90fc] Pridėti a.txt, b.txt, c.txt
Pakeisti 3 failai, 0 įterpimų (+), 0 pašalinimų (-)
sukurti režimą 100644 a.txt
sukurti režimą 100644 b.txt
sukurti režimą 100644 c.txt $ liesti x.txt y.txt z.txt
$ git pridėti -A
$ git būsena
Filialo kapitonas
Pakeitimai, kuriuos reikia atlikti:
(naudokite "git reset HEAD
naujas failas: x.txt
naujas failas: y.txt
naujas failas: z.txt
$ git įsipareigoti -m "Pridėti x.txt, y.txt, z.txt "
[meistras 8af8c12] Pridėti x.txt, y.txt, z.txt
Pakeisti 3 failai, 0 įterpimų (+), 0 pašalinimų (-)
sukurti režimą 100644 x.txt
sukurti režimą 100644 m.txt
sukurti režimą 100644 z.txt
Atrodo, kad abu variantai veikia vienodai.
Norėdami ištirti toliau, sukurkime situaciją, kai mes pridėsime ką nors darbo katalogo šakniniame lygyje, tada pridėsime daugiau failų aplanke:
$ touch 1.txt$ mkdir naujas
$ cd nauja
$ liesti m.txt n.txt o.txt
$ git pridėti .
$ git būsena
Filialo kapitonas
Pakeitimai, kuriuos reikia atlikti:
(naudokite "git reset HEAD
nauja byla: m.txt
naujas failas: n.txt
nauja byla: o.txt
Neatsekti failai:
(naudokite "git add
… / 1.txt
Atkreipkite dėmesį, kad Gitas nepridėjo 1.txt failas aukštesnio lygio aplanke.
Jei sukurtume aplanką, pavadintą „dested“.txt failą ir naudokite „git add“. vėl komandą, matome, kad o.pridėtas txt, bet 1.txt dar nepridėtas.
$ mkdir įdėta$ touch įdėta / d.txt
$ git pridėti .
$ git būsena
Filialo kapitonas
Pakeitimai, kuriuos reikia atlikti:
(naudokite "git reset HEAD
nauja byla: m.txt
naujas failas: n.txt
naujas failas: įdėtas / d.txt
nauja byla: o.txt
Neatsekti failai:
(naudokite "git add
… / 1.txt
Dabar naudokime komandą „git add -A“:
$ git pridėti -A$ git būsena
Filialo kapitonas
Pakeitimai, kuriuos reikia atlikti:
(naudokite "git reset HEAD
naujas failas:… / 1.txt
nauja byla: m.txt
naujas failas: n.txt
naujas failas: įdėtas / d.txt
nauja byla: o.txt
Dabar 1.txt aplanke buvo pridėtas prie sustojimo srities.
Štai kaip atrodo aplankai
| --1.txt
| --ReadMe.txt
| --a.txt
| --b.txt
| --c.txt
| --x.txt
| --y.txt
| --z.txt
'- nauja
| --m.txt
| --n.txt
| --o.txt
'- įdėta
| --d.txt
Taigi, kai naudojate „git add .“Komandą, ji pridės visus šio lygio pakeitimus. Bet kai naudojate parinktį „git add -A“, modulis ieškos modifikacijų ir jas pridės.
Išvada
„Git add“ komanda suteikia galingų būdų pridėti pakeistus failus. Norėdami valdyti tai, kas bus pridėta, galite naudoti savo kodų natūralią katalogų hierarchiją.
Tolesnis tyrimas:
- https: // git-scm.com / docs / git-add
- „Git“: sužinokite apie versijų valdymą naudodami „Git“: išsamų „Ultimate“ pradedančiųjų vadovą
- Versijų valdymas naudojant „Git“: galingi įrankiai ir metodai, skirti programinei įrangai kurti kartu
- „Pro Git“, 2-asis leidimas