继续以下问题:
我正努力在自己的环境中实现这一点。
我遵循了建议,并根据自己的需要进行了调整,但是,当我运行git status
时,我得到的就是.gitignore本身。
我正在创建一个Magento模块,如果您已经创建了一个Magento模块,那么您将知道整个Magento安装中的奇数位置都有文件。
这是我创建的.gitignore:
# Ignore All
/*
/*/
# EXCEPT
# =============
# This
!/.gitignore
# Module Config
!/app/etc/modules/Company_Module.xml
# Module Code
!/app/code/local/Company/Module/
# Front End Design
!/app/design/frontend/base/default/layout/company_module.xml
!/app/design/frontend/base/default/template/company_module/
# Back End Design
!/app/design/adminhtml/default/default/layout/company_module.xml
!/app/design/adminhtml/default/default/template/company_module/
# JavaScript
!/js/company_module/
# Front End Skin
!/skin/frontend/base/default/css/company_module/
!/skin/frontend/base/default/images/company_module/
!/skin/frontend/base/default/js/company_module/
# Back End Skin
!/skin/adminhtml/default/default/css/company_module/
!/skin/adminhtml/default/default/images/company_module/
!/skin/adminhtml/default/default/js/company_module/
我创建了以下文件来测试其有效性/app/etc/modules/Company_Module.xml
,但它在git status
输出中根本没有出现。
我不知道此时该做什么。
答案 0 :(得分:0)
好的,我已经弄清楚应该如何构建它。
我必须在创建文件时将每个文件夹视为自己的实体。例如,我将查看根并使用/*
忽略所有,然后遍历此目录中的每个文件夹并否定我需要否定的内容,包括否定仅我要否定的文件夹。我没有跟踪文件的完整路径,而是在逐个文件夹的基础上对其进行处理。请参阅以下示例:
/*
!/app
app/*
!/app/etc
app/etc/*
!app/etc/modules
app/etc/modules/*
!/app/etc/modules/Company_Module.xml
逐行:
/*
!/app
app/*
!/app/etc
app/etc/*
!/app/etc/modules
app/etc/modules/*
!/app/etc/modules/Company_Module.xml
它有点啰嗦,但它肯定会增加400多行来忽略每个不相关的文件/文件夹。
我已经用这种方式构建了文件,它从36行扩展到91行,所以它并不太糟糕。现在,所有内容都已通过此.gitignore
结构投放到我的回购中,我可以确认其有效性。