Mercurial with multiple projects

后端 未结 3 895
傲寒
傲寒 2020-12-13 06:32

I have a couple of projects with different release cycles sitting in my SVN repository. Releases are created by using the classic tags structure in SVN. When there are bugs

3条回答
  •  被撕碎了的回忆
    2020-12-13 07:11

    Some subversion repositories will group logically unrelated things (i.e. projects with different version numbers and release cycles) under one trunk:

    .
    |-- branches
    |   |-- project-a-1.x
    |   `-- project-a-feature-1
    |-- tags
    |   |-- project-a-1.0
    |   |-- project-b-1.0
    |   `-- project-b-1.1
    `-- trunk
        |-- project-a
        `-- project-b
    

    This kind of layout has no direct analog in mercurial. Each project which has its own release cycle and own version numbers should have its own repository.

    Some subversion repositories are structured to do this by giving each project its own trunk, tags and branches:

    .
    |-- project-a
    |   |-- branches
    |   |   |-- 1.x
    |   |   `-- feature-1
    |   |-- tags
    |   `-- trunk
    `-- project-b
        |-- branches
        |-- tags
        |   |-- 1.0
        |   `-- 1.1
        `-- trunk
    

    You can think of each project as a logical repository within your physical subversion repository. Each project has its own trunk, tags and branches. This also has the benefit that you can keep tag and branch names shorter because you already know which project they belong to.

    This layout is also trivial to express with a tool like mercurial. Each "project" becomes a mercurial repository. Tags and branches within that repository are tags and branches of that project.

提交回复
热议问题