我即将启动一个基于CodeIgniter的项目,并计划使用Git作为我们的DVCS。我将与其他一些开发人员合作,中央(源)服务器是私有托管的。但是我也想开源它并稍后将代码发布给Github。
我的问题是,有没有办法在Git中分离配置文件,以便配置文件中的私人信息不会发送到Github远程,而是发送到源和其他对等。
另一个问题是,我们是否可以使用类似的解决方案来获取本地开发配置文件和服务器用于生产?
答案 0 :(得分:8)
创建每个开发人员将使用的文件config.php.sample
和database.php.sample
,其中包含密码和其他敏感信息的占位符。将config.php
和database.php
添加到您的.gitignore
首次部署到生产网站时,您将创建config.php
和database.php
个文件。后续推送不会覆盖config.php
和database.php
,因为它们不包含在git存储库中。
答案 1 :(得分:2)
Codeigniter对环境(开发,生产等)有一些支持。 请参阅官方文档CodeIgniter Environments。
关于配置文件,您可以使用.gitignore
http://progit.org/book/ch2-2.html
编辑:
由于您在问题中使用了github
标记, Github现在可以选择添加.gitignore
文件(它们也有一个codeigniter模板)
答案 2 :(得分:0)
在将应用程序部署到目标系统时,应使用部署工具设置配置文件。
带有capistrano
的 railsless-deploy
是个不错的选择