忽略已经提交给Git存储库的文件
这个问题在这里已经有了答案:
要解开已经添加/初始化到您的存储库的单个文件,即停止跟踪文件,但不能从系统中删除它使用: git rm --cached filename
要查找现在位于.gitignore
每个文件,请执行以下操作:
首先提交任何未完成的代码更改 ,然后运行以下命令:
git rm -r --cached .
这将从索引(暂存区域)中删除所有已更改的文件,然后运行:
git add .
承诺:
git commit -m ".gitignore is now working"
要撤消git rm --cached filename
,请使用git add filename
。
如果您试图忽略已经在存储库中跟踪的文件的更改(例如,您需要为本地环境更改的dev.properties文件,但不希望检查这些更改),而不是您想要执行的操作是:
git update-index --assume-unchanged <file>
如果你想再次开始跟踪更改
git update-index --no-assume-unchanged <file>
参见git-update-index(1)手册页。
也可以看看update-index的skip-worktree
和no-skip-worktree
选项,如果你需要通过git-reset(via)
更新:由于人们一直在问,这里有一个方便的(以及更新后的评论)别名,用于查看当前工作区中当前“忽略”了哪些文件(--assume-unchanged)
$ git config --global alias.ignored = !git ls-files -v | grep "^[[:lower:]]"
为了untrack已经被添加/初始化到存储库文件,即停止跟踪该文件,但不能从您的系统使用的删除: git rm --cached filename
上一篇: Ignore files that have already been committed to a Git repository
下一篇: "Your branch is ahead of 'origin/master' by 3 commits."