Git commit -a "untracked files"?
Когда я делаю git commit -a
, я вижу следующее:
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# On branch better_tag_show
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: ../assets/stylesheets/application.css
# modified: ../views/pages/home.html.erb
# modified: ../views/tags/show.html.erb
# modified: ../../db/seeds.rb
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# ../assets/stylesheets/
# ../views/pages/
Что означают эти необработанные файлы? Все изменения были отслежены. Я не понимаю, почему git предупреждает меня о невоспроизводимых файлах здесь.
ИЗМЕНИТЬ
Хорошо, я вижу много путаных ответов. Вот что происходит после я git commit -a
этого.
# On branch master
nothing to commit (working directory clean)
Как вы можете видеть, нет ничего, кроме тех четырех файлов, которые применяли изменения.
Мой вопрос должен быть перефразирован следующим образом: Почему git предупреждает меня о незатронутых файлах, когда все изменения в этой фиксации были отслежены?
Другими словами, является неотслеживаемым предупреждением в сообщении git commit?
Ответы
Ответ 1
Для других, имеющих ту же проблему, попробуйте запустить
git add.
который добавит все файлы текущего каталога для отслеживания (в том числе без следа), а затем используйте
git commit -a
чтобы зафиксировать все отслеживаемые файлы.
Как предложил @Pacerier, один вкладыш, который делает то же самое,
git add -a
Ответ 2
git commit -am "msg"
не совпадает с git add file
и git commit -m "msg"
Если у вас есть файлы, которые никогда не добавлялись в отслеживание git, вам все равно нужно сделать git add file
Команда git commit -a "является ярлыком для двухэтапного процесса. После вы изменяете файл, который уже известен репо, вам все равно придется скажите репо:" Эй, я хочу добавить это в поставленные файлы и в конечном итоге, передать его вам ". Это делается путем выпуска" git add "команда." git commit -a" помещает файл и фиксирует его в одном шаг.
Источник: "git commit -a" и "git добавить"
Ответ 3
-
Сначала вам нужно добавить все необработанные файлы. Используйте эту командную строку:
git add *
-
Затем выполните эту командную строку:
git commit -a
Ответ 4
Вы должны ввести в командной строке
git add --all
Это передаст все неотслеживаемые файлы
Редактировать:
После размещения ваших файлов они готовы к фиксации, поэтому ваша следующая команда должна быть
git commit -am "Your commit message"
Ответ 5
Если у вас есть проблемы с неотслеживаемыми файлами, этот трехстрочный скрипт поможет вам.
git rm -r --cached .
git add -A
git commit -am 'fix'
Тогда просто git push
Ответ 6
Как следует из названия, "untracked files" - это файлы, которые не отслеживаются git. Они не находятся в вашей промежуточной области и не были частью каких-либо предыдущих коммитов. Если вы хотите, чтобы они были версией (или управлялись с помощью git), вы можете сделать это, указав 'git', используя 'git add'. Проверьте эту главу Запись изменений в репозиторий в Progit, которая использует приятный визуал, чтобы дать хорошее объяснение записи изменений в репозиторий git, а также объяснение терминов "отслеживаемый" и "невоспроизводимый"
Ответ 7
Убедитесь, что вы находитесь в правильном каталоге (главной папке хранилища) в вашем локальном git, чтобы он мог найти конфигурацию папки .git перед тем, как фиксировать или добавлять файлы.
Ответ 8
У вас есть файлы, созданные каркасом или приложением автоматически, вы не поместили их в отслеживаемые файлы, найдите эту папку и поместите ее в.gitignore