0%

[Tips] Git 忽略目录里的文件但不忽略目录的办法

背景

我在开发时候遇到一个问题,关于图片上传接口, 默认情况下,Python 代码是不会自动创建文件的,如果想要把图片保存到某个目录下面,需要事先检查是否有这个目录结构,否则就会报错。
但是纠结的那颗心,我😭拒绝写检查文件夹是否存在的代码。

所以有了这篇文章。

正文

长话短说,我发现了简单两个方法来达到我的目的。

方法一:巧妙的修改配置文件

gitignore 的用法可以看下面的链接,放出我的 gitignore 配置文件。

1
2
3
media/*.*
media/images/*.*
media/avatar/*.*

*.* 代表要忽略 a.b 这种形式的文件,然后我们在 media,media/images, media/avatar 下面都加上 .gitkeep 这个文件,这样子我们就可以把这个三个文件夹都添加到 git 里面了。

注:这里的 .gitkeep 也可以是别的文件名,比如 .iwantit、.iloveyou, 我使用 gitkeep, 纯属个人喜好。

方法二:强制提交

这个就比较狂野了,先放配置文件。

1
media/

代表忽略 media 下面所有的文件。

然后开始强制提交:

1
2
3
git add -f media/.gitkeep
git add -f media/images/.gitkeep
git add -f media/avatar/.gitkeep

done.

记得 commit。

相关链接

【git】.gitignore用法 - 简书