我编写并维护了一个拥有大约 1K 活跃用户的中型网站。
我使用 Ubuntu、Python、Django、jQuery、Less、twitter-bootstrap 等技术以及它们带来的所有依赖项。我有半吨的外部组件,比如我从 Internet 下载的 JS 库,还有一些我在 GitHub 上 fork 的项目,因为我需要更改。我安装的一些 Python 项目是pip
.
我还对在线下载的 JS 库进行了更改,现在所有内容都在我的存储库中。分叉的项目在我的存储库中作为 git 子模块提供。
经过 1.5 年的发展,我意识到这是一种糟糕的方法。升级任何组件都可能非常混乱。我很难跟踪版本,而且我害怕升级单个组件(无论是我用 pip 安装的 python 包,还是 javascript 库,或其他东西),因为这可能会导致回归上帝知道在哪里。
昨晚我开始想,与其分叉诸如没有明天之类的东西,我应该维护一组补丁,通过 Makefile 应用。
我会更好吗?你觉得呢?你有没有什么想法?
提前致谢。