Я использую msysgit и имею дерево проекта, которое содержит много bin/folders в дереве. Используя файл .gitignore в корне проекта, мне нужно игнорировать все DLL-файлы, которые находятся внутри корзины/папки в любом месте дерева проекта. Я пробовал «bin/*. Dll», но это не работает, я предполагаю, что он работает только с bin/folder в корне проекта.Git - Игнорировать определенные файлы, содержащиеся в определенных папках
ответ
Обновление августа 2016 (семь лет спустя, Git 2.9.3/Git 2,10)
**/bin/*.dll
Это делает работу на любой глубине.
Оригинальный ответ (2009, Гит 1,6)
ли вы попробовать:
**/bin/*.dll
Это делает работу с моим msysgit1.6.3 (с .gitignore
файл в корневом каталоге Git Рабочее пространство).
Фактически вышеизложенное игнорирует только «x/bin/z.dll
», а не «x/y/bin/z.dll
».
Другой синтаксис может быть:
**/*/bin/*.dll
Но что бы получить только глубину 3, не глубина 2!
Так что, если вы не слишком много места, где * .dll должны быть проигнорированы, самое простое решение, все равно будет локальный файл .gitignore в этих каталогах «БИН» ...
Или коллекция директива, чтобы покрыть основные первые глубины:
bin/*.dll
**/bin/*.dll
**/*/bin/*.dll
**/**/*/bin/*.dll
и так далее, все в одном файле .gitignore.
Я использую msysgit 1.6.3, но шаблон **/bin/* .ll не работал. Я добавил этот шаблон в мой .gitignore в корне, а затем попытался «git add -dry-run * .dll» из корневого каталога, и он перечислил мои файлы .dll, содержащиеся в bin/folders моего дерева проектов. – 2009-06-09 19:49:41
У меня только /bin
в моем файле и, похоже, сработает. Он игнорирует всю папку (в отличие от конкретных файлов)
Вот полное содержание на данный момент (все еще развивается).
.svn*
obj/
bin/
*.suo
*.user
Log/
log/
*.db
Работает. по крайней мере для меня. git версия 1.7.2.5 –
есть. отлично! работает для меня тоже – gpol
*/бен работал для меня
Я думаю, что */бен/будет также.
У меня была аналогичная проблема и реализовано: файлы уже были добавлены и отмечены в git.
Как распознать разницу: Git не показывал файлы как «новые», а как «измененные». Эта информация обошлась мне довольно давно ...
Если это проблема, просто «git rm» эти файлы и начните сначала. Внезапно, .gitignore начинает работать, как ожидалось.
это сработало для меня, но это самая тупая вещь, которую я должен был сделать с участием Git. – BryanGrimes
git rm -f -r/path # для удаления и удаления папки. – tgkprog
.gitignore на окнах, похоже, не работает. Я использую msysgit v 1.7.6 beta, и он просто не работает так, как он должен на странице .gitignor man. Теперь, если я скопирую содержимое моего файла .gitignore в файл $ GIT_DIR/info/exclude, внутри репо все будет работать.
Итак, облом, что это не реплицируется, но это лучше, чем ничего.
Это сработало! Я использую github для окон –
- 1. Скажите GIT игнорировать определенные файлы
- 2. игнорировать определенные файлы во всех папках, используя один .gitignore файл
- 3. Git игнорировать все файлы, кроме определенных файлов
- 4. git: игнорировать файлы в определенных средах
- 5. Как игнорировать определенные файлы в репозитории Git?
- 6. git игнорировать определенные каталоги
- 7. Subversion Игнорировать определенные файлы
- 8. Werror игнорировать определенные файлы
- 9. TypeScript tsconfig Выходные файлы в определенных папках
- 10. Невозможно игнорировать затмить определенные файлы в gitignore
- 11. Git игнорировать, кроме определенных подкаталогов
- 12. Git игнорировать зафиксированные файлы
- 13. Git игнорировать удаленные файлы
- 14. Git: Игнорировать отслеженные файлы
- 15. Git игнорировать файлы локально
- 16. Как заставить Git автоматически игнорировать определенные файлы при изменении настроек?
- 17. Как я могу игнорировать определенные файлы из репозитория Git?
- 18. Игнорировать удаленные файлы в git?
- 19. Выбор файлов в определенных папках
- 20. Git игнорировать не игнорировать указанные папки/файлы
- 21. Git игнорировать отслеживаемые временные файлы
- 22. Git не будет игнорировать файлы
- 23. Сделать git игнорировать сгенерированные файлы
- 24. Игнорировать созданные андроид файлы, GIT
- 25. Игнорировать git-svn файлы из `git log`
- 26. Git игнорировать файлы при клонировании
- 27. Отключение определенных команд/программ в определенных папках?
- 28. GIT & Laravel останавливает определенные файлы
- 29. git checkout определенные файлы, несмотря на конфликт
- 30. Git вытащить только определенные файлы
Я подтверждаю, что «git add -dry-run * .dll» добавляет не игнорируемый DLL. Не могли бы вы разместить содержимое вашего файла .gitignore? – VonC
Вы правы: '**/bin/*. Dll' работает только для 'x/bin/z.dll' (глубина 2), а не 'x/y/bin/z.dll' (глубина 3). Взгляни сейчас. – VonC
Я не уверен, что поддержка гитиорного шаблона поддерживает рекурсивное обнаружение каталогов ... Я внесла поправки в свой ответ. – VonC