2015-12-21 50 views
0

特定的文件夾,我不希望跟蹤所有的文件我account文件夾內Untrack通過GIT

我已經嘗試添加/public/images/account/*.gitignore文件

每一次,我做了git status,我還是得到

modified: public/images/account/1001/logo.png

我幹了什麼錯在這裏做什麼?


我也嘗試添加/public/images/account/*/logo.png.gitignore

回答

1

當你被告知,這些文件是modified這意味着他們已被添加到回購還需要forget文件,你已經通過使用git rm

+0

'git rm'文件名? – ihue

+0

或'git rm'文件夾名稱? – ihue

+0

@ihue是 - 無論你不需要 - 注意你應該備份文件以防萬一。 –

0

一旦文件被添加(git add),.gitignore對它沒有影響。

從緩存(git rm --cached)刪除文件將使它那麼如果在.gitignore提到被正確地忽略:

git rm --cached <files_to_remove> 
git commit 

然而,文件刪除操作由Git的存儲和相應的每次將被應用提交重播;該文件將仍然存在於以前的提交中。對於在合併,重新綁定,挑選等過程中應該從未添加的文件(例如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