Gitignore语法忽略动态目录

时间:2014-08-05 07:25:58

标签: git gitignore

我的应用程序中有一个主题目录,其中包含应用程序各部分的目录,然后在主题名称目录下,下面是一个视图目录,可能还有控制器,语言和模型目录,如下所示:

theme
   admin
      themename
         view
   front
      themename
         view
         controller(optional)
         model(optional)
         language(optional)

所有视图都应包含在repo中,因为它们是核心安装的一部分,但开发人员将添加控制器,模型和语言文件以覆盖相同名称和结构的核心文件。这些文件不应包含在回购中,因为它们不是基于核心的。

我第一次尝试:

/app/theme/*/*/*
!/app/theme/*/*/view

这没有用,所以我进行了研究,似乎**应该代表一个动态目录,所以我尝试了:

/app/theme/**/**/*
!/app/theme/**/**/view

但这些文件仍然包含在回购邮件中。

是否有一些技巧我没有让这些显示被忽略?

1 个答案:

答案 0 :(得分:2)

/app/theme/*/*/*
!/app/theme/*/*/view
.gitignore中的

正在为我工​​作。

如果您已经提交了文件,则必须从git存储库中删除这些文件。 你必须这样做:

git rm app/theme/*/*/{controller,language,model} --cached