Ответ
Для одновременной индексации (staging) всех отслеживаемых файлов и создания коммита используется команда git commit с флагом -a.
git commit -a -m "Ваше сообщение коммита"
Разбор флагов:
-a(или--all): автоматически добавляет в индекс все изменённые и удалённые файлы, которые уже находятся под версионным контролем (отслеживаются Git).-m(или--message): позволяет указать сообщение коммита непосредственно в командной строке.
Важное ограничение
Флаг -a не добавляет в индекс новые (untracked) файлы. Если вы создали новые файлы, их нужно сначала добавить вручную с помощью git add.
Сценарий с новыми файлами:
- Сначала добавляем все файлы, включая новые:
git add . - Затем делаем коммит:
git commit -m "Добавлены новые и изменены существующие файлы"
Для выполнения обеих операций в одной строке можно использовать оператор &&:
git add . && git commit -m "Полный коммит всех изменений" Ответ 18+ 🔞
А, ну ты смотри, какой умный нашёлся! Решил сразу всё в коммит запихнуть, да? git commit -a, блядь, классика жанра для ленивых, как я.
Слушай сюда, разжуёшь по полочкам. Берёшь эту команду:
git commit -a -m "Ваше сообщение коммита"
И что она делает, эта хитрая жопа? Флаг -a — это типа «авто-всё-в-пизду». Он сам, сука, подхватывает все файлы, которые уже под присмотром гита (отслеживаемые), и которые ты там поменял или вообще удалил. И сразу в индекс их, на подготовку. Удобно, ёпта! Не надо бегать с git add по каждому чиху.
А -m — это чтобы не открывался этот ваш долбанный редактор вим, где я вечно хуй знает как выйти. Пишешь сообщение прямо тут и всё, в рот меня чих-пых!
НО! И это большое, жирное, блядь, «НО»! Флаг -a — он НЕ ВИДИТ новые файлы, которые ты только что наваял! Совсем нихуя! Они для него как призраки, невидимки, блядь. Untracked, называется.
Представь ситуацию: ты создал новый файл super_code.py, изменил старый old_shit.py. Запускаешь свою волшебную git commit -a... И что? А хуй! Только old_shit.py улетит в коммит, а твой новый шедевр так и останется висеть в воздухе, несчастный сирота!
Что делать, спросишь? А вот что, мудя:
- Сначала загони ВСЕ файлы, и старые, и новые, куда надо:
git add . - А уж потом коммить на здоровье:
git commit -m "Добавлены новые и изменены существующие файлы"
А если ты совсем царь и терпения ноль ебать, чтобы две команды писать, то можешь склеить их в одну строчку через &&:
git add . && git commit -m "Полный коммит всех изменений"
Вот так вот, просто, как три копейки. Запомнил? А то будешь потом охуевать, куда файлы делись.