你如何让git忽略目录的所有内容?

Tab*_*tha 52 git

我有一个git目录,其中包含一大堆文件,然后有一个名为'sessions'的目录.'sessions'包含我的web.py程序的cookie信息.

我需要文件夹'sessions'保留在git存储库中,因为没有该文件夹,程序无法正常运行.我不需要将文件夹的实际内容存储在git目录中.

所以问题是:

如何让git忽略文件夹的内容而不是文件夹本身?

小智 59

添加sessions/.gitignore文件

*
!.gitignore
Run Code Online (Sandbox Code Playgroud)

第二行告诉git不要忽略.gitignore文件,因此该文件夹不为空,但忽略其他所有内容.

  • 回答旧问题没有错 - 这有助于像我这样的未来Google员工.我现有的项目成功地使用了这个答案.此外,这个答案解释了它使用的语法,与接受的答案不同. (23认同)

cee*_*yoz 51

如果我记得正确,你可以通过.gitignoresessions文件夹中创建一个文件[^.]*作为其内容来实现.

  • 我得到了它的工作,但我不得不使用'[^.]*'而不是'*' (6认同)
  • [^.]*表示:不要忽略名称以"."开头的文件,例如.gitignore.另外:你可能认为这没有做任何事情 - 我做了 - 因为在你提交.gitignore之前这不会生效. (5认同)