【发布时间】:2010-11-08 05:29:50
【问题描述】:
我必须开发两个 Django 项目,它们共享 90% 的相同代码,但在多个应用程序、模板和模型本身中存在一些差异。
我正在使用 Git 进行分布式源代码控制。
我的要求是:
两个项目的公共代码在一个地方开发(Project1 的开发环境)
定期将其合并到第二个项目(Project2)的开发环境中
变体不容易封装在应用程序中。 (例如,有一些应用程序。例如“配置文件”在 Project1 和 Project2 之间有所不同,但也有一个持续的共同演变)
Project1 和 Project2 都有公共存储库,因此我可以与其他人协作
同样,Project1 和 Project2 应该有开发、演示、登台和生产服务器。
但是,在这两种情况下,公共存储库都不在同一台服务器上。因此,例如,当我在 Project1 中进行开发时,我希望能够“推送”到我的 github 服务器,但没有 Project2 的内容。
有local_settings.py等文件在Project1和Project2之间完全不同,但应该在每个Project的多个开发者之间共享
那么处理这种情况的最佳方法是什么?
看起来比较理想的是“过滤拉取”,而不是 .gitignore 说“完全忽略这个文件”,我可以说“从那个 repo 拉取时忽略这个文件”我什么也看不到很像文档中的内容,但可能有类似的内容吗?
【问题讨论】:
-
您找到解决方案了吗?想尝试自己做类似的事情吗?
-
我也在寻找。