gitignore 不应该跟踪子目录中的文件,但应该跟踪目录结构

gitignore shouldn't track files in subdirectory, but should track the directory structure

我有这些文件:

Static/Images/img1.png
Static/Images/img2.jpg
Static/Files/file1.pdf
Static/Files/file2.docx

而我要存放目录结构,意思是:

Static
Static/Images
Static/Files

但我不想存储这些文件,因为它们只是不必要的静态文件的存储库。 另一方面,存储目录结构对我来说很重要。

我尝试了很多东西,搜索了很多,但没有成功。 Gitignore 比看起来更难。

一些尝试:

1.

Static/Images/*
Static/Files/*

2.

Static/Images/**
Static/Files/**

3.

Static/*
!Static/Images/
!Static/Files/

你不能那样做; Git 根本不跟踪目录,而是根据目录包含的文件创建目录。通常的解决方案是向每个目录添加并跟踪一个空的 .gitkeep 文件。所以:

Static/Images/*
!.gitkeep