.gitignore和.gitkeep有什么区别?

.gitignore和之间有什么区别.gitkeep?他们是同一个名字不同的事物,还是两者都发挥不同的作用?


我似乎在上找不到太多文档.gitkeep。


梵蒂冈之花
浏览 1382回答 3
3回答

慕的地8271018

.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会删除或不向存储库中添加空目录,因此.gitkeep有点像一种hack(我不认为它是Git的正式名称),可以将空目录保留在存储库中。只需执行一次touch /path/to/emptydirectory/.gitkeep添加文件,Git现在就可以在存储库中维护此目录。
打开App,查看更多内容
随时随地看视频慕课网APP