版本控制-git是否忽略空文件夹?
我创建了一个Android项目,将其添加到我的git repo中,提交并克隆到主数据库。 后来我尝试签出该项目,Eclipse抱怨缺少src文件夹。 我检查了我的存储库,发现主存储库和src文件夹丢失了(我在创建项目时确定它们在那里)。 那么有人可以解释一下这里发生了什么吗? 我是git的新手,所以也许我错过了一些东西?
Eno asked 2020-08-12T06:05:42Z
6个解决方案
67 votes
Git不会忽略空目录。 它忽略所有目录。 在Git中,目录仅通过其内容隐式存在。 空目录没有内容,因此不存在。
或者换一种说法:Git是一个内容跟踪器。 空目录不满足。
56 votes
是的,git会忽略空文件夹。
您可以将一个空的3007729839689439434112或.gitkeep
文件添加到要包含的任何文件夹中。
11 votes
Git跟踪内容而不是文件。
这里提出一个解决方案。
4 votes
git会忽略所有目录,无论它们是否为空。
当文件需要在不存在的目录中存在时,git在磁盘上构建树时会创建目录。 否则,将不会关注目录。
1 votes
是的,git会忽略空文件夹,有关如何解决的一些建议是:
- 将自述文件放在文件夹中并描述文件夹内容,或者为什么文件夹为空并且必须保留
- 将名为.gitignore的空文件放入文件夹中
- (我最喜欢的地方)在其中放一个名为.gitkeep的空文件。 此解决方案是上下文相关的,因为如果有人看到该文件,它将理解为什么在文件夹中
0 votes
是的,git不会跟踪空文件夹。 在此处找到有关StackOverflow的完整讨论