.gitkeep
没有记录,因为它不是 Git 的一个功能。
Git 无法添加一个完全空的目录 。想要在 Git 中跟踪空目录的人已经创建了在这些目录中放置名为.gitkeep
文件的约定。该文件可以被称为任何东西; Git 对此名称没有特别的意义。
有一个竞争的惯例是将.gitignore
文件添加到空目录以跟踪它们,但有些人认为这令人困惑,因为目标是保留空目录,而不是忽略它们; .gitignore
还用于列出 Git 在查找未跟踪文件时应忽略的文件。
.gitkeep
只是一个占位符。一个虚拟文件,所以 git 不会忘记该目录,因为 git 只跟踪文件。
如果你想要一个空目录并确保它对 git 保持 “干净”,请创建一个包含以下行的.gitignore
:
# .gitignore sample
###################
# ignore all files in this dir...
*
# ... except for this one.
!.gitignore
如果你希望 git 只能看到一种类型的文件,下面是一个如何过滤所有文件的例子,除了. gitignore 和所有.txt
文件:
# .gitignore to keep just .txt files
###################################
# filter everything...
*
# ... except the .gitignore...
!.gitignore
# ... and all text files.
!*.txt
('#' 表示评论。)
.gitignore
是一个文本文件,包含目录中的文件列表,git 将忽略或不在存储库中添加 / 更新。
.gitkeep
由于 git 删除或不添加空目录到 repo .gitkeep 是一种 hack(我不认为它被正式命名为 git 的一部分)来保留 repo 中的空目录。
只需touch /path/to/emptydirectory/.gitkeep
即可添加文件,git 现在可以在存储库中维护此目录。