使用.gitignore忽略文件或者文件夹及其失效解决方法
git如果需要忽略某个文件夹,可以在初始化之后,在仓库根目录下创建一个.gitignore文件,添加需要忽略的文件和文件夹即可。
我们也不需要从头写.gitignore文件,GitHub已经为我们准备了各种配置文件,只需要组合一下就可以使用了。所有配置文件可以直接在线浏览:https://github.com/github/gitignore
例如排除Windows自动生成的垃圾文件和仓库的APP1子文件夹:
# Windows: Thumbs.db ehthumbs.db Desktop.ini #Directories APP1/
如果已经提交过的文件或者文件夹怎么办?此时更改.gitignore文件对已经提交的文件是无效的。
2.1 首先,编辑.gitignore文件。
2.2 然后如果是单个文件,可以使用如下命令从仓库中删除:
git rm --cached logs/xx.log
如果是整个目录:
git rm --cached -r logs
如果文件很多,那么直接
git rm --cached -r .
如果提示某个文件无法忽略,可以添加-f参数强制忽略。
git rm -f --cached logs/xx.log
2.3 然后
git add .
git commit -m "Update .gitignore"
把被忽略的某个文件强制添加回去:
git add -f filename
ignore规则检查:
git check-ignore
一些规则
a# 忽略所有 .a 结尾的文件
!lib.a# 但lib.a 除外
/TODO# 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
build/# 忽略build/ 目录下的所有文件
doc/.txt# 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库