\ 当我们在 git 中跟踪一个文件时,它有时会被缓存并保持跟踪,即使我们将它添加到我们的.gitignore
文件中也是如此。这仅仅是因为.gitignore
阻止文件被添加到 Git 的跟踪系统,但它不会主动删除那些已经被跟踪的文件。
\ 当您有一些您不想再被跟踪但似乎无法从您的 git 存储库中删除的东西时,这可能会导致问题。
\ 幸运的是,有一个简单的方法可以解决这个问题。 git
有一个内置的rm
函数,它可以让我们删除缓存或跟踪的更改。要运行它,您可以使用以下命令删除特定文件,其中[filename]
可以与您希望停止跟踪的文件一起删除:
\
git rm --cached [filename]
\ 类似地,如果需要删除整个目录,请使用-r
标志(表示递归),以从跟踪中删除整个目录及其中的所有内容:
\
git rm -r --cached [directory]
\ 运行此命令后,您可以添加修改您的提交并将其推送到您的远程:
git add . git commit -m "Removed tracked files which shouldn't be tracked" git push
\注意:这不会从您的本地计算机中删除文件,但会从您的 git 存储库中删除文件的跟踪。
\ 它还会在您下一次git pull
时从其他开发人员、计算机或服务器中删除文件。
\ 小心这个命令!
也在这里发布