#git #git-untracked
#git #git-неотслеживаемый
Вопрос:
Я новичок в Git и проделал некоторую работу над некоторыми файлами .scss, которые компилируются в файлы .css с помощью Gulp.
Я выполнил свою работу и теперь готов отправить мои измененные файлы на Github. Однако при этом я вижу 3 неотслеживаемых файла git status
: журнал, файл .js и файл .scss.
Как эти файлы были помечены как неотслеживаемые? Я думал, что должен был указать это сам.
Комментарии:
1. Все новые файлы, которые появляются в рабочей области и которые еще не были в репозитории, не отслеживаются.
Ответ №1:
В git все файлы, которые находятся в рабочем каталоге, но не были явно добавлены (т. Е. git add
), помечаются как «неотслеживаемые». Это фактически означает, что они существуют, но git не отслеживает изменения в них.
Комментарии:
1. А, хорошо. Итак, в таком случае, почему отслеживались другие файлы? Я еще не использовал git add, так что разве все они не должны отображаться как неотслеживаемые?
2. Это не нормально, потому
git add
что вы также в конечном итоге добавляете содержимое этих файлов в область индекса — когда вы только хотели отслеживать эти файлы.3. вы клонировали репозиторий @MeltingDog или вы запустили новый репозиторий?
4. Это новый репозиторий. Да, это то, что я говорил: я еще не использовал git add с этой веткой, так как же их можно отследить?
5. @MeltingDog По праву в чистом репозитории git ничего не должно отслеживаться. Если у вас есть отслеживаемые файлы в чистом репозитории git, это очень странно
Ответ №2:
Файл по умолчанию находится в untracked
состоянии. Вы должны добавить его в git, чтобы убедиться, что git начнет его отслеживать.
Вы можете отслеживать конкретный файл, написав следующее
git update-index --no-assume-unchanged <path_to_file>
если вы хотите снова отменить отслеживание файла, вы можете сделать это через
git update-index --assume-unchanged <path_to_file>
git update-index
регистрирует файл для индексации — таким образом, начинается отслеживание файла. Однако, как уже сообщалось в других ответах git add
, содержимое файла также добавляется в индекс, что добавляет отслеживание файла и добавляет этот файл в промежуточную область (готов к фиксации)
Комментарии:
1. Для того, кто только начал изучать git, это излишне сложно. Я не могу назвать ситуацию за пределами ниш, в которой вы хотели бы такого поведения, а не просто внесения изменений в файл
git add
. Черт возьми, даже справка дляgit status
git дает «использовать»git add» для отслеживания»2. «излишне сложно» — вы все равно должны говорить правильные вещи. Скорее, я чувствую, что когда вы изучаете что-то новое, это лучшее время для поиска правильных вещей, в противном случае существует тенденция игнорировать правильные вещи во имя сложных вещей !