Коммит это запись изменений в репозиторий, т.е это действие которое изменяет историю проекта. А add это добавление файла (или его части) под версионный контроль раз, для включения файла или его части для записи в следующий коммит два (у этой команды несколько назначений, она универсальна). В репозитории может содержаться как контролируемые файлы (отслеживаемые ) так и не отслеживаемые (всякий мусор например). Для удобства записи коммитов можно использовать команду$ git commit -am "имя коммита"
(где флаг "а" означает добавление всех ранее отслеживаемых файлов в коммит, а флаг "m" означает, что имя коммита указывается в строке ввода, а не внешнем редакторе, типа vim )Для того чтобы мусор не болтался под ногами и не всплывал в подсказках по неотслеживаемым файлам его перечисляют в файле .gitignore