使用Git保存我的应用程序的公共和私有版本

时间:2010-10-23 13:45:48

标签: git version-control branch versioning

我正在构建一个我用Git管理的Rails应用程序。一切都很完美,但我想保留公共版本和私人版本。那就是:

  • 公共版本用于公共存储库(供人们使用),
  • ,私有版本适用于我自己的网站。

这个想法是两个版本都应该是最新的,区别在于我的私有版本的文件包含我的网站的密码,而公共版本没有(或者包含一些默认值)。

我一直在考虑分支:master(公开版)和一些私人分支 但似乎每次提交后我都要做很多合并。

请记住,我要求我在git上仍然是一个菜鸟。

谢谢大家!

2 个答案:

答案 0 :(得分:4)

我会:

  • 将密码存储在仅包含敏感数据的私人仓库中
  • 存储在公共回购中:
    • 对私有仓库的引用作为子模块(只有你可以签出该子模块,因为它是私人仓库)
    • 一些模板配置
    • 某些脚本能够使用正确的值构建实际的配置文件:
      • 默认值,如果没有子模块
      • 如果子模块已签出,则
      • 密码。

这样,没有任何合并,也无法将敏感数据推送到公共回购。

答案 1 :(得分:4)

我进行Django开发并将所有敏感数据保存在我放入.gitignore内的单个文件中。它不受版本控制,我在部署服务器和本地开发机器上保留了不同的版本。