Git 停止跟踪文件
Azhar Bashir Khan
2023年1月30日
Git
Git Tracking

在本教程中,我们将学习如何在 Git 中停止跟踪仓库中的文件和文件夹。
在开发仓库中,我们经常遇到这样的情况,我们不再希望在 Git 中跟踪某些文件的更改。
假设我们有一个文件,我们现在觉得它是多余的,不再与项目相关。在这种情况下,我们希望从 Git 仓库中的跟踪中删除该文件。
我们现在将通过一个例子来说明这一点。
使用 git rm
停止跟踪 Git 中的文件
假设我们在 Git 的仓库中有一个名为 file1
的文件,我们不再希望跟踪它。
我们可以使用带有 --cached
选项的 git rm
命令从 Git 中的跟踪中删除该文件。
Git
gitCopy$ git rm --cached file1
rm 'file1'
我们还可以使用以下命令从 Git 仓库中的跟踪中删除文件夹。
Git
gitCopy$ git rm -r --cached <folder-name>
这将从跟踪中删除指定的文件或文件夹(即)从索引中删除它;但不会从文件系统中删除该文件。
另请注意,我们需要提交文件删除以更新远程仓库中的此更改。
Git
gitCopy$ git commit -m "Removed file1"
$ git push
在 Git 中使用 git update-index
停止跟踪文件
有时,我们可能希望在仓库中保留一个文件,但不再希望跟踪其更改。我们可以使用带有 --skip-worktree
选项的 git update-index
命令来实现这一点。
Git
gitCopy$ git update-index --skip-worktree file1
命令 git update-index
的 --skip-worktree
选项使 Git 假装文件的版本是最新的,而是从索引版本中读取。这对于配置文件特别有用。
我们可能在仓库中有一些具有默认值或生产值的配置文件,我们可能会根据需要对其进行一些更改,但不想提交这些更改。用于命令 git update-index
的 --skip-worktree
选项对于此类目的非常方便。
因此,我们详细说明了停止跟踪 Git 仓库中的文件和文件夹。
Enjoying our tutorials? Subscribe to DelftStack on YouTube to support us in creating more high-quality video guides. Subscribe