SVN(乌龟)-如何处理这种情况?

SVN(乌龟)-如何处理这种情况?,svn,version-control,tortoisesvn,Svn,Version Control,Tortoisesvn,我在delphi7和tortoisesvn中进行项目工作。该项目是一种调查工具。 我们目前正在开始开发新版本的it,它将是myproject1.8,两个月后我们将开始myproject2.0 注意:我们继承了已经存在的svn。所以这不是我们的设计 场景: 我的c:\中只有一个文件夹,即c:\project\myproject\,我们是一家初创公司,所以我们没有从项目开始,我们从myproject 1.5开始处理。但是现在myproject 1.5code已经消失,并在myproject 1.6上

我在
delphi7
tortoisesvn
中进行项目工作。该项目是一种调查工具。 我们目前正在开始开发新版本的it,它将是
myproject1.8
,两个月后我们将开始
myproject2.0

注意:我们继承了已经存在的svn。所以这不是我们的设计

场景: 我的
c:\
中只有一个文件夹,即
c:\project\myproject\
,我们是一家初创公司,所以我们没有从项目开始,我们从
myproject 1.5
开始处理。但是现在
myproject 1.5
code已经消失,并在
myproject 1.6
上交。因此,当我们从
myproject 1.7
开始时,我们创建了一个文件夹
c:\project\myproject\NV1.6Code
,并将整个代码复制到该文件夹中,然后从
myproject开始1.7
…现在我不知道如何在当前状态下维护子版本,如
myproject 1.7.1
myproject 1.7.2
`myproject 1.6.4

现在我们即将开始使用
myproject1.8
,我们不知道如何在subversion控件中使用它 那时,myproject 2.0也将很快推出

结构: 路径:
C:\projects\myproject

如图所示,
NV1.6code
目录有版本1.6的代码,外部的所有目录都是版本
1.7的代码

不是个好主意? 我不认为这是个好主意

目标:如何正确处理上述混乱? 请帮助我如何在我的情况下最好地利用乌龟SVN来维护 版本

  • myproject版本1.6(然后是类似于1.6.1、1.6.2、1.6.3的subversion)
  • myproject版本1.7(然后是类似于1.7.1、1.7.2、1.7.3的subversion)
  • myproject版本1.8(然后是类似于1.8.1、1.8.2、1.8.3的subversion)
  • 然后是未来版本myproject 2.0版

  • -特别是关于分支。

    特别是关于分支。

    有两种方法可以做到这一点:使用分支或标记功能

    一般来说,我喜欢使用tag来指定发布点,开发以相对线性的方式继续(1.6到1.7,1.7到1.8,等等)

    然而,如果出于某种原因说您发布了1.6,而主要的开发转到了1.7,但您希望继续对1.6进行一些小的更改(如1.6.1、1.6.2等),那么创建分支可能是有益的


    同时使用这两种功能也很好。

    有两种方法可以做到这一点:使用分支或标记功能

    一般来说,我喜欢使用tag来指定发布点,开发以相对线性的方式继续(1.6到1.7,1.7到1.8,等等)

    然而,如果出于某种原因说您发布了1.6,而主要的开发转到了1.7,但您希望继续对1.6进行一些小的更改(如1.6.1、1.6.2等),那么创建分支可能是有益的


    同时使用这两个功能也很好。

    您应该使用分支和标记功能来解决您的问题。但是请记住,为每个版本创建分支确实会使工作变得复杂,并且您无法处理它们的更改。请记住:

    • 尽量减少分支的数量。(通常在项目中2或3就足够了)
    • 对于每个发布的版本,创建一个标记
    • 避免在没有适当机制将更改合并回源代码管理中有大量分支
    • 如果与开发时间相比,合并更改花费的时间太多,那么分支的结构就有问题
    • 如果您决定拥有分支机构,请不要尽可能推迟合并。禁止同时合并所有分支的所有更改(大爆炸合并)
    • 团队不应该无缘无故地创建许多分支
    • 如果在系统中创建了任何分支(正确或错误),则应在工作结束时将其更改合并回其父分支(如果可能)
    • 在分支、合并或构建新基线的过程中,团队成员不应停止开发活动
    • 不要使用分支来划分开发团队成员,而不是划分他们正在执行的工作

    查看更多信息

    您应该使用分支和标记功能来解决您的问题。但是请记住,为每个版本创建分支确实会使工作变得复杂,并且您无法处理它们的更改。请记住:

    • 尽量减少分支的数量。(通常在项目中2或3就足够了)
    • 对于每个发布的版本,创建一个标记
    • 避免在没有适当机制将更改合并回源代码管理中有大量分支
    • 如果与开发时间相比,合并更改花费的时间太多,那么分支的结构就有问题
    • 如果您决定拥有分支机构,请不要尽可能推迟合并。禁止同时合并所有分支的所有更改(大爆炸合并)
    • 团队不应该无缘无故地创建许多分支
    • 如果在系统中创建了任何分支(正确或错误),则应在工作结束时将其更改合并回其父分支(如果可能)
    • 在分支、合并或构建新基线的过程中,团队成员不应停止开发活动
    • 不要使用分支来划分开发团队成员,而不是划分他们正在执行的工作

    查看更多信息