我刚刚下载了(而不是克隆)CakePHP 2.2.4。该目录包含一个.gitignore文件:
# only the relevant part here
/app/Config
/app/tmp
现在我执行了这些命令,因为否则 Config 和 tmp 目录(及其初始内容)将永远不会被提交:
git add -f Config
git add -f tmp
我对tmp目录没有问题,因为那里没有更改的文件,只会创建新文件!
相反,我必须修改一些文件(例如数据库配置)在Config文件夹中。但是Git现在要求我再次git add
这些修改后的文件!
如何忽略这些修改?
我也可以重新初始化整个Git repo,因为我没有创建/修改太多文件。
我为解决实际问题所作的CakePHP修改
我的CakePHP新的*.gitignore
文件:
# removed: /app/Config/
# start edit
/app/Config/*
!/app/Config/Schema/
!/app/Config/*.default.php
# end edit
/app/tmp
/lib/Cake/Console/Templates/skel/tmp/
/plugins
/vendors
/build
/dist
.DS_Store
/tags
我已经将/app/Config文件夹中的所有文件都添加了.default后缀:
acl.ini.default.php.
acl.default.php.
bootstrap.default.php.
core.default.php.
database.php.default --> database.default.php
email.php.default --> database.default.php
编辑: 最好使用*.default.php
而不是*.php.default
,因为这可以防止在mod_rewrite
失败时将文件输出到浏览器(尽管这是不太可能发生的情况)。
git update-index --assume-unchanged
(答案链接),这是我正在寻找的吗? - ComFreek