git是否忽略空文件夹?

时间:2010-06-12 21:51:22

标签: git version-control

我创建了一个Android项目,将它添加到我的git repo中,然后将我的克隆推送到主人。后来我尝试检查项目,Eclipse抱怨缺少src文件夹。我检查了我的仓库,主仓库和src文件夹丢失了(我确定他们在我创建项目时就在那里)。有人能解释这里发生了什么吗?我是git的新手,所以也许我错过了什么?

6 个答案:

答案 0 :(得分:64)

Git不会忽略空目录。它会忽略所有目录。在Git中,目录仅通过其内容隐式存在。 Emtpy目录 没有内容,因此它们不存在。

或者换句话说:Git是一个内容跟踪器。空目录不满足。

答案 1 :(得分:55)

是的,git会忽略空文件夹。

您可以将空.gitignore.gitkeep文件添加到要包含的任何文件夹中。

答案 2 :(得分:11)

Git跟踪内容而不是文件。

提出了一个解决方案here

答案 3 :(得分:4)

git忽略所有目录,无论它们是否为空。

当文件需要存在于不存在的目录中时,git将在磁盘上构建树时重新创建目录。否则,不会关注目录。

答案 4 :(得分:1)

是的,git会忽略空文件夹,有关如何解决的一些建议是:

  1. 将README文件放在文件夹中并描述文件夹内容或文件夹为何空,必须保留
  2. 在文件夹
  3. 中放入一个名为.gitignore的空文件
  4. (我最喜欢)把一个名为.gitkeep的空文件放进去。这个解决方案是上下文的,因为如果有人看到该文件将理解为什么它在文件夹

答案 5 :(得分:0)

是的,git不会跟踪空文件夹。查找a full discussion here on StackOverflow