.gitignore не игнорирует каталоги

что я сделал:

Я думаю, что были некоторые странные конфигурации из gui github, которые вызвали эту проблему и помешали мне легко использовать git из командной строки или даже git-bash.

Я закончил тем, что просто удалил github и git, а затем переустановил just git для windows. Теперь у меня все работает из командной строки(кроме ssh, который я запускаю из git-bash). Гораздо проще и надежнее, чем графический интерфейс github.

спасибо МЮ за то, что потратил время, пытаясь понять это. Я не использовал его ответ, но если бы мне не нужно было переустановить git, это было бы то, что мне нужно было сделать.


Я использую gui github на своей локальной машине. Я просто заметил, что фиксация, которую я собирался сделать, собиралась обновить все мои недавно обновленные модули узла. Я установил свой .gitignore игнорировать весь

6 ответов


С node_modules каталог уже отслеживается как часть репозитория,.gitignore правило не будет применяться к нему.

вам нужно отследить каталог из git с помощью

git rm -r --cached node_modules
git commit -m "removing node_modules"

вы можете запустить выше 2 в git-bash.

после этого .gitignore правило будет игнорировать каталог прочь.

обратите внимание, что это приведет к удалению каталога node_modules из других репозиториев, как только вы вытащите изменения. Только оригинальное РЕПО, где вы сделали это совершить все равно придется node_modules папка есть.


Если файлы уже отследили .gitignore файл не будет переопределять это. Вам нужно будет использовать git rm --cached <files>

см. полную информацию о git rm at https://www.kernel.org/pub/software/scm/git/docs/git-rm.html Я сам сталкивался с этим раз или два на ранней стадии с git, и это было не совсем то, что я ожидал.


Если вы работаете с узловыми проектами, мне нравится это .gitignore:

# See http://help.github.com/ignore-files/ for more about ignoring files.

# dependencies
node_modules

# testing
coverage

# production
build

# misc
.DS_Store
.env
npm-debug.log

подобно Заку, я также использовал echo "node_modules/" >> .gitignore.

проблема заключалась в том, что он создал файл с кодировкой UCS-2 LE BOM. Используя Блокнот++ Я изменил кодировку на UTF-8, и теперь voila-node_modules игнорируется.

enter image description here


У меня была эта проблема. Как - то, когда я сгенерировал файл (используя echo "node_modules" > .gitignore) он вставил символ мусора в начале файла (я обвиняю powershell).

Итак, если вы столкнулись с этой проблемой, попробуйте удалить .gitignore и начать все заново.


Если вы:

git rm -r --cached node_modules
git commit -m "removing node_modules"

вам нужно переустановить пакеты npm? У меня есть .gitignore файл с кодом для игнорирования node_modules в моем репозитории, но не игнорируя их. Я новичок в кодировании!