Pojďme inicializovat nový projekt.
$mkdirprojekt
$CDprojekt
$git init
Inicializováno prázdné úložiště Gitv /Uživatelé/zakh_eecs/_práce/LearnGIT/git_add/projekt/.jít/
$vyhodil 'Nový projekt' >Soubor ReadMe.txt
$git přidatSoubor ReadMe.txt
$git commit -m 'Počáteční závazek'
[mistr(root-commit)47b9af1]Počáteční závazek
1 souborzměnil,1vložení(+)
vytvořit režim100644Soubor ReadMe.txt
V tomto projektu jsme přidali soubor ReadMe.txt. K přidání souboru ReadMe.txt jsme použili příkaz git add. Příkaz add není určen pouze pro přidávání souborů. Přidá také jakoukoli úpravu souboru. V tomto kurzu budeme pouze přidávat a mazat soubory, aby to bylo jednoduché. Ale považujte příkaz add za přidání změn do pracovní oblasti. Potom musíte použít příkaz commit, aby byly změny oficiální.
Když máte co do činění s mnoha soubory a složkami, je obtížné jednotlivě přidat každou změnu. Můžete tedy použít následující příkazy:
$git přidat.
$git přidat -NA
Podívejme se, jak se tyto dva příkazy chovají:
$ touch a.txt b.txt c.txt
$ git přidat.
$ git status
Na pobočce mistra
Změny, které mají být provedeny:
(pro zrušení fáze použijte 'git reset HEAD ...')
nový soubor: a.txt
nový soubor: b.txt
nový soubor: c.txt
$ git commit -m 'Add a.txt, b.txt, c.txt'
[master 9ca90fc] Přidejte a.txt, b.txt, c.txt
3 soubory změněny, 0 vložení (+), 0 odstranění (-)
vytvořit režim 100644 a.txt
vytvořit režim 100644 b.txt
vytvořit režim 100644 c.txt $dotekx.txt y.txt z.txt
$git přidat -NA
$git status
Na pobočce mistra
Změny, které mají být provedeny:
(použití'git reset HEAD ...'k unstage)
nový soubor: x.txt
nový soubor: y.txt
nový soubor: z.txt
$git commit -m 'Přidat x.txt, y.txt, z.txt'
[mistr 8af8c12]Přidejte x.txt, y.txt, z.txt
3soubory změněny,0vložení(+),0vypouštění(-)
vytvořit režim100644x.txt
vytvořit režim100644y.txt
vytvořit režim100644z.txt
Zdá se, že obě možnosti fungují stejně.
Abychom to dále prozkoumali, vytvořme situaci, kdy něco přidáme na kořenovou úroveň pracovního adresáře a poté přidáme další soubory do složky:
$dotek 1.txt
$mkdirNový
$CDNový
$dotekm.txt n.txt o.txt
$git přidat.
$git status
Na pobočce mistra
Změny, které mají být provedeny:
(použití'git reset HEAD ...'k unstage)
nový soubor: m.txt
nový soubor: n.txt
nový soubor: o.txt
Nesledované soubory:
(použití'git add ...'zahrnoutvco bude spácháno)
../1.txt
Všimněte si, že Git nepřidal soubor 1.txt do složky vyšší úrovně.
Pokud jsme vytvořili složku s názvem vnořenou do souboru d.txt a použili jsme git add. znovu vidíme, že o.txt byl přidán, ale 1.txt ještě nebyl přidán.
$mkdirvnořené$dotekvnořené/d.txt
$git přidat.
$git status
Na pobočce mistra
Změny, které mají být provedeny:
(použití'git reset HEAD ...'k unstage)
nový soubor: m.txt
nový soubor: n.txt
nový soubor: vnořený/d.txt
nový soubor: o.txt
Nesledované soubory:
(použití'git add ...'zahrnoutvco bude spácháno)
../1.txt
Nyní použijeme příkaz git add -A:
$git přidat -NA$git status
Na pobočce mistra
Změny, které mají být provedeny:
(použití'git reset HEAD ...'k unstage)
nový soubor: ../1.txt
nový soubor: m.txt
nový soubor: n.txt
nový soubor: vnořený/d.txt
nový soubor: o.txt
Nyní byl 1.txt ve složce přidán do pracovní oblasti.
Takto složky vypadají
| --1.txt
| --ReadMe.txt
| --a.txt
| --b.txt
| --c.txt
| --x.txt
| --y.txt
| --z.txt
`- nový
| --m.txt
| --n.txt
| --o.txt
``- vnořený
| --d.txt
Když tedy používáte git add. příkaz, přidá všechny změny z této úrovně. Když ale použijete možnost git add -A, vyhledá úpravy v celém modulu a přidá je.
Závěr
Příkaz Git add poskytuje účinné způsoby přidávání upravených souborů. Pomocí hierarchie přirozeného adresáře svých kódů můžete řídit, co se přidá.