Git 忽略某个目录中的文件,同时保留这个目录
类似的一个问题是项目根目录下可能有 logs 一类的目录,
我们希望他人把仓库 clone 下来的时候能够已经携带了这个目录,
但又不希望让这个目录中的日志文件进版本库。
之前看到一些项目用了一种比较 ugly 的做法:
在 logs 下建立一个 .gitkeep 空文件(git 无法版本控制没有任何文件的空目录),
然后再在项目根目录 .gitignore 中写入一行
logs/*
其实完全没有这样的必要,我们可以直接在 logs 里面写一个 .gitignore 文件,内容如下:
* !.gitignore
然后
git add logs/.gitignore
git commit
提交。
这个 .gitignore 既留住了空目录,又声明了忽略。
而且某天如果要删除 logs 目录,直接 git rm -r logs 即可,
无需再修改项目根目录下的 .gitignore 。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本