Git i usuwanie plikow

Chciałem się upewnić czy dobrze to robię.

Miałem model ze strukturą drzewiastą, stwierdziłem, że lepiej będzie użyć gemu ancestry.
Stworzyłem branch ‘ancestry’ (z ‘dev’). Pousuwałem pliki, pozmieniałem i teraz, żeby to wszystko zapisać robię:

git add .
git add . -u
git commit -m “ancestry changes”

Wygląda, że to działa, ale nie do końca rozumiem to -u.
Będę wdzięczny za podpowiedź jak to dokładnie działa, czy może jednak powinienem to robić jakoś inaczej ?

Przeklejone z git add --help:

[quote]-u, --update
Only match against already tracked files in the index rather than the working tree. That means that it will never
stage new files, but that it will stage modified new contents of tracked files and that it will remove files from the index if
the corresponding files in the working tree have been removed.

       If no <filepattern> is given, default to "."; in other words, update all tracked files in the current directory and its
       subdirectories.[/quote]

Z czego wynika, że skoro zrobiłeś już git add ., nie musisz już robić git add . -u.

[quote=Lypa]Przeklejone z git add --help:

[quote]-u, --update
Only match against already tracked files in the index rather than the working tree. That means that it will never
stage new files, but that it will stage modified new contents of tracked files and that it will remove files from the index if
the corresponding files in the working tree have been removed.

       If no <filepattern> is given, default to "."; in other words, update all tracked files in the current directory and its
       subdirectories.[/quote]

Z czego wynika, że skoro zrobiłeś już git add ., nie musisz już robić git add . -u.[/quote]
To nie wynika z tego, musisz dać -u aby pozbyć się usuniętych plików.

[quote=hosiawak][quote=Lypa]Przeklejone z git add --help:

[quote]-u, --update
Only match against already tracked files in the index rather than the working tree. That means that it will never
stage new files, but that it will stage modified new contents of tracked files and that it will remove files from the index if
the corresponding files in the working tree have been removed.

       If no <filepattern> is given, default to "."; in other words, update all tracked files in the current directory and its
       subdirectories.[/quote]

Z czego wynika, że skoro zrobiłeś już git add ., nie musisz już robić git add . -u.[/quote]
To nie wynika z tego, musisz dać -u aby pozbyć się usuniętych plików.[/quote]
Racja. Nie doczytałem.

do samego usuniecia wielu plików używam:

git ls-files --deleted | xargs git rm