Git Dodaj wszystkie zmodyfikowane pliki

Git Add All Modified Files



Kiedy masz do czynienia z dodawaniem Git, masz wiele opcji dodawania wszystkich zmodyfikowanych plików. Przyjrzyjmy się kilku scenariuszom, aby zrozumieć możliwości.

Zainicjujmy nowy projekt.







$mkdirprojekt

$Płyta CDprojekt

$git init
Zainicjowano puste repozytorium Gitw /Użytkownicy/zakh_eecs/_Praca/Dowiedz GIT/git_add/projekt/.wybrać się/

$wyrzucił 'Nowy projekt' >ReadMe.txt

$git dodajReadMe.txt

$git commit -m „Początkowe zobowiązanie”
[gospodarz(root-commit)47b9af1]Wstępne zobowiązanie
1 plikzmieniony,1wprowadzenie(+)
tryb tworzenia100644ReadMe.txt

W tym projekcie dodaliśmy plik ReadMe.txt. Użyliśmy polecenia git add, aby dodać plik ReadMe.txt. Polecenie add służy nie tylko do dodawania plików. Dodaje również dowolną modyfikację pliku. W tym samouczku dodamy i usuniemy tylko pliki, aby było to proste. Ale pomyśl o poleceniu add jak o dodawaniu zmian do obszaru pomostowego. Następnie musisz użyć polecenia commit, aby zmiany były oficjalne.



Kiedy masz do czynienia z wieloma plikami i folderami, trudno jest indywidualnie dodawać każdą zmianę. Możesz więc użyć następujących poleceń:



$git dodaj.
$git dodaj -DO

Przyjrzyjmy się, jak zachowują się te dwa polecenia:





$ dotknij a.txt b.txt c.txt

$git dodaj.

$ status git
Na mistrzu oddziału
Zmiany do zatwierdzenia:
(użyj 'git reset HEAD ...', aby usunąć ze sceny)

nowy plik: a.txt
nowy plik: b.txt
nowy plik: c.txt

$ git commit -m 'Dodaj a.txt, b.txt, c.txt'
[master 9ca90fc] Dodaj a.txt, b.txt, c.txt
Zmieniono 3 pliki, 0 wstawień (+), 0 usunięć (-)
utwórz tryb 100644 a.txt
utwórz tryb 100644 b.txt
Utwórz tryb 100644 c.txt $dotykaćx.txt y.txt z.txt

$git dodaj -DO

$status git
Na mistrzu oddziału
Zmiany do zatwierdzenia:
(posługiwać się'git reset HEAD...'wystawić na scenę)

nowy plik: x.txt
nowy plik: y.txt
nowy plik: z.txt

$git commit -m „Dodaj x.txt, y.txt, z.txt”
[mistrz 8af8c12]Dodaj x.txt, y.txt, z.txt
3pliki zmienione,0wstawki(+),0skreślenia(-)
tryb tworzenia100644x.txt
tryb tworzenia100644y.txt
tryb tworzenia100644z.txt

Obie opcje wydają się działać tak samo.

Aby zbadać dalej, stwórzmy sytuację, w której dodamy coś na poziomie głównym katalogu roboczego, a następnie dodamy więcej plików w folderze:



$dotykać 1.tekst

$mkdirNowy

$Płyta CDNowy

$dotykaćm.txt n.txt o.txt

$git dodaj.

$status git
Na mistrzu oddziału
Zmiany do zatwierdzenia:
(posługiwać się'git reset HEAD...'wystawić na scenę)

nowy plik: m.txt
nowy plik: n.txt
nowy plik: o.txt

Nieśledzone pliki:
(posługiwać się'git dodaj...'aby zawierałowco zostanie popełnione?)

.../1.tekst

Zauważ, że Git nie dodał pliku 1.txt w folderze wyższego poziomu.

Jeśli stworzyliśmy folder o nazwie nested z plikiem d.txt i użyjemy git add. ponownie, widzimy, że o.txt został dodany, ale 1.txt nie został jeszcze dodany.

$mkdirzagnieżdżone

$dotykaćzagnieżdżone/d.txt

$git dodaj.

$status git
Na mistrzu oddziału
Zmiany do zatwierdzenia:
(posługiwać się'git reset HEAD...'wystawić na scenę)

nowy plik: m.txt
nowy plik: n.txt
nowy plik: zagnieżdżony/d.txt
nowy plik: o.txt

Nieśledzone pliki:
(posługiwać się'git dodaj...'aby zawierałowco zostanie popełnione?)

.../1.tekst

Teraz użyjmy polecenia git add -A:

$git dodaj -DO

$status git
Na mistrzu oddziału
Zmiany do zatwierdzenia:
(posługiwać się'git reset HEAD...'wystawić na scenę)

nowy plik: ../1.tekst
nowy plik: m.txt
nowy plik: n.txt
nowy plik: zagnieżdżony/d.txt
nowy plik: o.txt

Teraz 1.txt w folderze został dodany do obszaru przemieszczania.
Oto jak wyglądają foldery

projekt
|--1.txt
|--Przeczytaj.txt
|--a.txt
|--b.txt
|--c.txt
|--x.txt
|--y.txt
|--z.txt
`-- nowy
|--m.txt
|--n.txt
|--o.txt
`-- zagnieżdżone
|--d.txt

Tak więc, gdy używasz git add . polecenie, doda wszystkie zmiany z tego poziomu. Ale gdy użyjesz opcji git add -A, będzie szukał modyfikacji w całym module i doda je.

Wniosek

Polecenie Git add zapewnia potężne sposoby dodawania zmodyfikowanych plików. Możesz użyć naturalnej hierarchii katalogów kodów, aby kontrolować, co jest dodawane.

Dalsze badanie: