Svn 颠覆的标准做法 我想知道是否有其他因素需要考虑使用颠覆的标准实践。< /P>
我所拥有的为数不多的是:Svn 颠覆的标准做法 我想知道是否有其他因素需要考虑使用颠覆的标准实践。< /P>,svn,Svn,我所拥有的为数不多的是: /tags/trunk和/branchs的目录结构 所有工作都在主干中完成,不会中断功能 在进行重大结构更改或添加破坏核心功能的功能时进行分支(取决于首选项) 标签包含稳定的版本 在开始工作之前,始终执行更新 在一天结束时/添加功能时提交更改 提交注释包含相关的描述 基于功能提交-不要覆盖提交 我对在一天结束时以及添加了一项功能时提交的规则感到矛盾。我在一天结束时说,要确保存储库尽可能是最新的。但是,一天结束时的代码可能不完整/中断功能。但是,仅在功能完成时提交可能
- /tags/trunk和/branchs的目录结构
- 所有工作都在主干中完成,不会中断功能
- 在进行重大结构更改或添加破坏核心功能的功能时进行分支(取决于首选项)
- 标签包含稳定的版本
- 在开始工作之前,始终执行更新
- 在一天结束时/添加功能时提交更改
- 提交注释包含相关的描述
- 基于功能提交-不要覆盖提交
谢谢 在提交之前,您应该始终执行更新,以防止与其他人的其他提交发生冲突和痛苦的合并
此外,每次提交都应该包含一些有意义的内容,如错误修复、新功能或对现有功能的一些改进,这些内容可以在日志消息中描述。源代码管理工具不是备份工具,因此应避免在没有有意义的内容的情况下进行“一天结束”提交。如果您是SVN新手,那么一个好的(免费)资源就是(死树副本也可以从O'Reilly处购买)。但是,仅在功能完成后提交可能会导致过期/冲突 如果变化如此之大,以至于您担心这一点,那么您可能应该进行分支。这将允许您在不破坏构建的情况下进行增量工作时进行较小的提交,并在合并到主干后留下清晰的历史记录。如果一个“功能”需要超过几(4-6)小时才能完成,我会
- 将“功能”划分为子任务,这些子任务可以在几个小时内完成并检查到源代码管理中
- 创建分支
- 以上两项
这种方法branch-merge…merge-merge-back-delete对我们很有效我会尽可能多地提交。为了实现这一点,您必须确保您编写的代码尚未使用,或者确保所有测试都通过。如果您停留在这两种模式中的一种(后者比前者好得多),那么您就不必担心无法提交的时间过长
在这方面非常有帮助。分支对于进行重大的、可能是突破性的更改是一个好主意。如果主干同时被更新,偶尔将主干合并到分支以保持分支更新 提交相关更改的原子集。不要对所有不相关的更改进行大的提交。这使得跟踪特定更改变得更加容易 您可以对同一个源进行多个签出,这在尝试不相关的更改时非常有用 避免提交损坏的代码、测试失败的代码或其他未决问题。更多注意事项:(尽量不要重复已经说过的内容) 分支机构: