svn - 如何维护略有不同的软件?

标签 svn version-control

我有一些项目在自定义硬件上运行。 现在硬件已经改变,这需要一些软件改变。 因此,“旧硬件”有来源 A,“新硬件”有来源 B,两者 95% 相同。

如果以后有新功能加入,两个版本都要做。换句话说,A 和 B 将并存,并且从现在开始将始终需要相同的更改。

我刚刚开始使用 Subversion,因此我不是很熟悉所有的可能性。

据我所知,B 的新分支将从那时起将两者分开,这不是我需要的。

维护 A 和 B 以便将来更改适用于两个版本而无需手动应用两次的最佳方法是什么?

最佳答案

我认为不需要任何复杂的版本控制。只需将您的资源组织成这样的结构:

Project
|-CommonSource95%
|-HardwareA
|-HardwareB

使用 makefile 或 #ifdefs 为特定硬件定制代码。

关于svn - 如何维护略有不同的软件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/801941/

相关文章:

version-control - 什么时候 TAG 应该优先于 BRANCHING,反之亦然(在 CVS 中)?

xcode - 如果 index.lock 存在,有没有办法让 git 自动重试命令?

git - 如何处理包含超过 100k 测试文件的 Git 存储库?

svn - 在 svn 中标记部分树与完整树干

git - 将 SVN 转换为 Git 使用 lfs 保存大文件

java - Mercurial v Git v 颠覆

svn - 使用 Git-Svn 克隆一个非标准的 Svn 存储库

c# - 使用 SharpSVN 在 C# 中预提交 Hook

svn - 解决与 SVN 的延迟冲突

svn diff 不显示修改后的外部文件