我有一个我正在本地工作的 git 项目。 这是一个PHP项目,带有存储MySQL数据库连接信息的配置文件。 我的本地 MySQL 设置与远程设置不同。
在我的遥控器上,我有一个接收后钩子,可以将文件签出到服务器上的文件夹中:
#!/bin/sh
GIT_WORK_TREE="../demo" git checkout -f
chmod +x hooks/post-receive
我如何告诉此签出不包含(覆盖配置文件),因为它将用我的本地配置文件替换远程配置文件? 我尝试将我的本地配置文件添加到 .gitignore 中,但这似乎没有做到。
知道如何从结帐中排除配置文件吗?
正确的解决方案是根本不提交您的config.php
(或任何名称),而是将其放入.gitignore
并提交config.php.example
。
因此,只需从存储库中删除配置文件,在远程计算机上重命名它,拉取以便您拥有最新的提交(这将删除文件),然后将其移回。
你可以
试试这个
运行命令:
git rm -r --cached .
这会从索引中删除所有内容,然后只需运行:
git add .
提交它:
git commit -m ".gitignore is now working"