2010-05-11 10 views
17

Jaka jest różnica między tymi dwoma poleceniami?Jaki jest efekt zatwierdzenia git bez opcji -a?

git commit -m "added a new page" 

i

git commit -a -m "added a new page" 

wiem, że opcja -a zorganizuje pliki, które zostały zmodyfikowane i usunięte, ale to co nie działa to bez -a oznacza?

Odpowiedz

27

Musisz wyraźnie wprowadzić zmiany w zobowiązaniach, stosując git add lub git rm.

Jeśli użyć flagi -a kiedy robi commit git automatycznie stadium wszelkich zmodyfikowanych i usuniętych plików bez konieczności wyraźnie wystawić je za pomocą add lub rm itp

Jeśli ty nie określić -a, wszystkie pliki, które zostały zmodyfikowane lub usunięte, ale nie zostały jawnie przetestowane przy użyciu git add lub git rm, zostaną zignorowane w zatwierdzeniu.

aktualizacja

jako dr Gianluigi Zane Zanettini mówi - -a nie dodaje nowych pliki do indeksu, więc jeśli masz zupełnie nowe pliki nie należy spodziewać -a do reklamy im.

http://www.kernel.org/pub/software/scm/git/docs/git-commit.html

+0

Dzięki za pomoc! – ben

+0

@ben nie ma za co. –

+2

Mała uwaga: '-a' działa tylko dla plików zmodyfikowanych/usuniętych. Zgodnie z dokumentacją git nie ma to wpływu na nowe pliki: 'ale nowe pliki, o których nie powiedzieliście Git, nie mają na nie wpływu. = = Prawie zawsze lepiej jest zrobić' git add .' zamiast 'git commit -a'. –

Powiązane problemy