我对将代码部署到存储库的正确方法有疑问。
这是我的想法:例如,在开发时,我可以将数据库信息添加到配置文件中,但是我不想将其部署到GitHub,因此每个人都可以看到我的数据库信息。当然,有一个简单的解决方案:忽略该文件。但是,如果将来我想更改配置文件结构怎么办?取消忽略该文件,从中删除敏感数据并推送到存储库?太复杂了吧?
是否有更好的方法来组织此活动?请给我解释一下,谢谢。 附言顺便说一句,我正在使用PHPStorm,也许已经有资源可以实现这一目标?
答案 0 :(得分:0)
最常见的做法是创建一个保存配置文件结构的.dist文件。
例如,如果您的config.env
文件如下所示:
DATABASE_DRIVER: mysql
DATABASE_HOST: localhost
DATABASE_PORT: 3306
DATABASE_USERNAME: leoap
DATABASE_PASSWORD: abc123
然后您的config.env.dist
文件将如下所示:
DATABASE_DRIVER: #YOUR_DRIVER#
DATABASE_HOST: #YOUR_HOST#
DATABASE_PORT: #YOUR_PORT#
DATABASE_USERNAME: #YOUR_USERNAME#
DATABASE_PASSWORD: #YOUR_PASSWORD#
好吧,现在config.env
应该被git忽略,而config.env.dist
也不应被忽略。
config.env.dist
将在存储库中以表示config.env
文件的结构。开发人员在首次从存储库中提取代码时,应复制config.env.dist
文件并重命名以删除.dist
扩展名。之后,他们应该编辑文件以插入其(可能是本地的)数据库信息。