我不想跟踪account
文件夹
我已尝试将/public/images/account/*
添加到我的.gitignore
文件
每一次,我都git status
,我仍然
modified: public/images/account/1001/logo.png
我在这里做错了什么?
我还尝试将/public/images/account/*/logo.png
添加到.gitignore
答案 0 :(得分:1)
当您被告知这些文件为modified
时,这意味着它们已添加到回购邮件中,您还需要forget
使用git rm
<已添加的文件/ p>
答案 1 :(得分:0)
添加文件(git add
)后,.gitignore
对其无效。
从缓存中删除文件(git rm --cached
)会使其在.gitignore
中提及时被正确忽略:
git rm --cached <files_to_remove>
git commit
但是,文件删除操作由Git存储,并且每次重播相应的提交时都会应用;并且该文件仍将出现在先前的提交中。对于在合并,rebase,cherry-pick等期间从未添加过的文件(例如IDE用户特定的配置文件),这通常是一个问题。因此,如果修改历史记录是可以接受的,那么以下解决方案更好:
# This action modifies the Git history! All commits previously containing the unwanted files will be rewritten.
git filter-branch --index-filter 'git rm -r --cached --ignore-unmatch <files_to_remove>' HEAD