目前我的.gitignore
中有以下内容:
...
sites/default/files/*
!sites/default/files/Library/bannerpt2.jpg
...
我想完成的是,除了sites/default/files/Library/bannerpt2.jpg
之外,我不想要sites/default/files/
中的任何一个。
不幸的是,您需要手动包含路径中的所有子目录。这应该有效:
...
sites/default/files/*
!sites/default/files/Library/
sites/default/files/Library/*
!sites/default/files/Library/bannerpt2.jpg
...
您可以使用
git add -f file
将文件添加到排除的文件夹中
示例交互:
$ git init
Initialized empty Git repository in /Users/killerx/temp/.git/
$ echo "*" > .gitignore
$ touch a.txt
$ git add a.txt
The following paths are ignored by one of your .gitignore files:
a.txt
Use -f if you really want to add them.
fatal: no files added
$ git add -f a.txt
$ git commit -m "t"
[master (root-commit) db22f19] t
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 a.txt
$ echo "a" > a.txt
$ git status
# On branch master
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: a.txt
#
no changes added to commit (use "git add" and/or "git commit -a")