所以当我去提交时,我必须从提交中取消选中app / build目录。我想删除这些文件被跟踪。
我的.gitignore
文件看起来是否正确?
build/
app/build/
.idea
.gradle
我试过
git rm -r --cached .
git add .
哪个似乎有效,git status
表示所有构建文件都已删除。然后我做了提交,文件被删除了。但是在构建和更改文件之后,它们会显示在我的下一次提交中。为什么会这样,为什么我不能解开这些文件?
答案 0 :(得分:3)
看起来build
目录已经在索引中了。
使用
git rm -r --cached .
git add .
删除未跟踪的文件,然后提交更改。
但更好的是从历史记录中删除文件:
git filter-branch --index-filter 'git rm -r --cached --ignore-unmatch <path-to-build-dir>' --prune-empty -f -- --all
但在这种情况下,您还必须使用强制推送来更新服务器历史记录。