SVN 关于分支和第三方供应商分支的问题
我们正在开发一个应用程序,其中包括:
- 合作伙伴不经常向我们提供的源代码库。这是一个有点工作的代码,某些东西的“最终”版本(我们在 zip 文件中得到它)。他们有自己的发布周期和版本跟踪。
- 在上面的代码库上我们进行了更改。这些可以是错误修复或新功能的开发。
到目前为止,我们设法创建了一些代码混乱,因此我们希望将所有这些都放在 SVN 存储库中。我想问您,您认为减少痛苦的最佳做法是什么。
以下是我们认为重要的事情:
- 我们希望跟踪我们的错误修复/更改,因为我们无法将错误修复发送回我们的软件供应商,但我们可以报告错误(他们可能会或可能不会修复它)。我们在他们的代码上开发的所有内容仍然是“内部”的,他们对我们的更改不感兴趣。
- 只要我们没有从供应商那里获得新的代码库,我们就认为他们的最新版本就是我们正在开发的稳定版本。这可能会进一步分支,但结果始终是一个稳定的主干,构建是基于这个“稳定”的主干完成的。
- 当供应商发布新版本时,我们希望将我们的“稳定”主干(包含很多更改)与他们的更改合并,从而创建一个新的“稳定”主干。
- 对于我们部署(到客户端)的每个版本,对于使用该特定版本安装了我们系统的客户端,我们稍后应该能够仅修复该版本上的错误
- 还有更多开发人员正在处理代码库...(像往常一样:)
谢谢很多提示。
We are developing an application which consists of:
- a source code base given to us by a partner infrequently. This is a somewhat working code, "final" version of something (and we get it in a zip file). They have their own release cycle and version tracking.
- on the code base above we make our changes. These can be either bugfixes or development of new features.
Till now, we managed to create some code mayhem, as a result we would like to put all this in a SVN repository. I would like to ask you what you think is the best practice for this to happen with the less pain.
The followings are our things that we consider important:
- We would like to track our bugfixes/changes since we cannot send back bugfixes to our software vendor, but we can report a bug (and they might or might not fix it). All we develop on their code remains "in-house" they are not interested in our changes.
- As long as we don't get a new codebase from the vendor, we consider their latest version to be the stable one we are working on. This might be branched down further, but the result is always a stable trunk, the build is done based on this "stable" trunk.
- When the vendor releases a new version we would like to merge our "stable" trunk (which contains a lot of changes) with their changes, thus creating a new "stable" trunk.
- For each version we deploy (to clients) we should be able later to fix bugs only on that version, for clients who have installed our system using that specific version
- There are more developers working on the codebase... (as usual :)
Thanks a lot for the tips.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
SVN 书籍 在 < 部分中介绍了此场景的最佳实践a href="http://svnbook.red-bean.com/en/1.5/svn.advanced.vendorbr.html" rel="nofollow noreferrer">供应商分支。
The SVN book covers the best practices for this scenario under the section Vendor Branches.