Git - 从接收后结帐中排除配置文件

时间:2012-04-26 06:14:48

标签: php git git-post-receive

我有一个我正在本地工作的git项目。这是一个带有配置文件的PHP项目,用于存储MySQL数据库连接信息。我的本地MySQL设置与远程设置不同。

在我的遥控器上,我有一个post-receive挂钩,可以将文件签出到服务器上的文件夹中:

#!/bin/sh
GIT_WORK_TREE="../demo" git checkout -f
chmod +x hooks/post-receive

如何告知此结帐不包含(覆盖配置文件),因为它会用我的本地文件替换远程配置文件?我已经尝试将我的本地配置文件添加到.gitignore,但似乎没有这样做。

知道如何从结帐中排除配置文件吗?

2 个答案:

答案 0 :(得分:2)

正确的解决方案不是提交您的config.php(或其名称),而是将其放入.gitignore并提交config.php.example

因此,只需从存储库中删除配置文件,在远程计算机上重命名,然后拉动以便进行最新的提交(将删除文件),然后将其移回。

答案 1 :(得分:0)

你可以试试这个

运行命令:

git rm -r --cached .

这将删除索引中的所有内容,然后运行:

git add .

承诺:

git commit -m ".gitignore is now working"