Tôi ngạc nhiên rằng các mẫu đơn giản như * .user trong tệp .gitignore dường như khớp với các tệp và tên thư mục.Làm cách nào để gitignore * chỉ * tệp?
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)
Tôi có kỳ vọng sai không? Làm cách nào để viết một tệp đơn giản bỏ qua với phần mở rộng blah và ngăn các thư mục kết thúc bằng .blah được khớp?
gitignore man page đề cập rằng các mẫu không có/được khớp với chức năng mẫu vỏ sò, nhưng nó không thực sự cho tôi biết nếu nó chỉ khớp với tệp hoặc tệp và thư mục.