2

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

在我的遥控器上,我有一个接收后挂钩,可以将文件签出到服务器上的文件夹:

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

我怎么能告诉这个结帐不包括(覆盖配置文件),因为它会用我的本地配置文件替换远程配置文件?我尝试将我的本地配置文件添加到 .gitignore,但似乎没有这样做。

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

4

2 回答 2

2

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

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

于 2012-04-26T06:17:02.053 回答
0

你可以试试这个

运行命令:

git rm -r --cached .

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

git add .

提交它:

git commit -m ".gitignore is now working"
于 2012-04-26T06:20:04.750 回答