Ответ 1
Git касается отслеживания изменений. Он полагается на вас, чтобы сказать, какие файлы достаточно важны для отслеживания. Вы можете добиться желаемого эффекта так:
git add . ;git commit -a
Убедитесь, что ваш файл .gitignore
обновлен.
Я немного новичок в git, и я не понимаю, почему git commit -a
только этапы изменят и удаляют файлы, но не новые файлы.
Может ли кто-нибудь объяснить, почему это так, и почему нет другого флага фиксации, чтобы включить добавление файлов и совершение в одной команде?
BTW, hg commit -A добавляет как новые, так и удаленные файлы в commit
Git касается отслеживания изменений. Он полагается на вас, чтобы сказать, какие файлы достаточно важны для отслеживания. Вы можете добиться желаемого эффекта так:
git add . ;git commit -a
Убедитесь, что ваш файл .gitignore
обновлен.
Я предлагаю другое решение: используя git commit --interactive -m "your commit message"
покажет вам это меню
*** Commands ***
1: [s]tatus 2: [u]pdate 3: [r]evert 4: [a]dd untracked
5: [p]atch 6: [d]iff 7: [q]uit 8: [h]elp
позволяет вам проверять статус, добавлять файлы без следа и т.д., используя простые нажатия клавиш.
Келли верна, но я думаю, что еще один фактор заключается в том, что так много людей ожидают такого поведения, потому что CVS, Subversion и большинство других инструментов делают это именно так.
Если Git зафиксировал новые файлы, вы можете заметить, что вы уже давно написали файлы .o
, и еще хуже они могут повредить сборку.
Я подозреваю, что ответ прост (но я сомневаюсь, что буду популярен в этом)! Приоритет проекта Git никогда не был непринужденным или удобным для пользователя.
В будущем вы можете придерживаться этого решения от Ian Clelland,
git add -A && git commit -m "Your Message"
Поскольку он не будет слишком заметным из комментариев fooobar.com/info/26603/...