Git中如何跟踪或取消跟踪文件或文件夹方式实用指南

作者:袖梨 2026-09-07

平时做技术实践时,很多问题不是概念不会,而是细节没串起来。拿“Git中如何跟踪或取消跟踪文件或文件夹方式”来说,它看着像小点,放到项目里常会牵出环境、配置、兼容性和维护成本。下面按实际采用顺序,把思路、关键写法和容易踩坑的地方讲清楚,便于大家直接对照操作。

目录
  • Git跟踪或取消跟踪文件或文件夹
  • 解决方法
  • 总结

Git跟踪或取消跟踪文件或文件夹

在git是用过程里,可能遇到以下情况:

1、被跟踪文件里面有不想跟踪的文件。

2、每次用git status查看状态时总是列出未被跟踪的文件。

解决方法

1、当被跟踪的文件里面有不想跟踪的文件时,采用命令git rm删除文件。

如:

  • 理解这一步时,git rm --cached readme1.txt 删除readme1.txt的跟踪,同时保留在本地。
  • 在这个场景下,git rm --f readme1.txt 删除readme1.txt的跟踪,同时且删除本地文件。
  • 结合项目来看,随后git commit即可。但是git status查看状态时还是会列出来。

2、每次用git status查看状态时总是列出未被跟踪的文件,能够借助.gitignore文件达到目的。

理解这一步时,在git init的目录下建立.gitignore文件,采用如下所示语法进行填写文件即可。

  • /mtk/ 过滤整个文件夹
  • *.zip 过滤所有.zip文件
  • /mtk/do.c 过滤某个具体文件

落到代码里,被过滤掉的文件就不会出现在你的GitHub库中了,当然本地库中还有,只是push的时候不会上传。

理解这一步时,这里需留意,gitignore还能够指定要将哪些文件添加到版本管理中:

!*.zip

!/mtk/one.txt

结合项目来看,唯一的区别就是规则开头多了一个感叹号,Git会将满足这类规则的文件添加到版本管理中。

理解这一步时,为什么要有两种规则呢?想象一个场景:我们只需管理/mtk/目录中的one.txt文件,这个目录中的其他文件都不需管理。那么我们就需采用:

/mtk/

!/mtk/one.txt

在这个场景下,假设我们只有过滤规则没有添加规则,那么我们就需把/mtk/目录下除了one.txt以外的所有文件都写出来!

理解这一步时,最后需强调的一点是,如果你不慎在新建.gitignore文件之前就push了项目,那么即使你在.gitignore文件中写入新的过滤规则,这些规则也不会起作用,Git仍然会对所有文件进行版本管理。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多兼容脚本之家。

您可能感兴趣的文章:
  • idea取消git托管方式(删除git文件)
  • 在 git 中取消 __pycache__ 文件的方法
  • 从Git上checkout指定的文件夹至本地的代码
  • 从git仓库中删除.idea文件夹的小妙招

相关文章

精彩推荐