Я удивлен, что простые шаблоны, такие как * .user в файле .gitignore, похоже, соответствуют файлам и именам папок.Как gitignore * только * файлы?
ringods$ mkdir TestIgnore
ringods$ cd TestIgnore/
ringods$ git init
Initialized empty Git repository in /Users/ringods/Projects/hostbasket/TestIgnore/.git/
ringods$ git status
# On branch master
#
# Initial commit
#
nothing to commit (create/copy files and use "git add" to track)
ringods$ mkdir security.user
ringods$ touch security.user/file_may_not_be_ignored.txt
ringods$ git status
# On branch master
#
# Initial commit
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# security.user/
nothing added to commit but untracked files present (use "git add" to track)
ringods$ echo "*.user"> .gitignore
ringods$ cat .gitignore
*.user
ringods$ git status
# On branch master
#
# Initial commit
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# .gitignore
nothing added to commit but untracked files present (use "git add" to track)
Есть ли у меня неправильное ожидание? Как я могу написать простой файл игнорировать файлы с расширением blah и предотвратить папки, заканчивающиеся на .blah соответствует?
gitignore man page упоминает, что шаблоны без// сопоставляются с использованием функций шаблона оболочки glob, но на самом деле это не говорит мне, соответствует ли это файлам только файлам или файлам и каталогам.