DVCS how structure with large integrated code base, with multiple projects sharing much common code?

后端 未结 2 410
小鲜肉
小鲜肉 2020-12-21 02:35

I have a cvs repository, with mostly java code. Each package sits in it\'s own top level dir, like so, with the sourced laid out in typical java fashion.

$CVSR         


        
2条回答
  •  情话喂你
    2020-12-21 03:30

    Regarding DVCS in general, a repo per component is the right size. Since they have the all history for their respective components, having only one repo for any component out there would not scale well.

    Git will use submodules, Mercurial Hg will use subrepos.

    The idea is to define a super-project (a repo in its own right) which will:

    • have its own files
    • have some of its own sub-directories being to root directory of a submodule components for a given reference (SHA1, tag, label)

    If you do some modification from the main project directly in one of those sub-components, you must first commit those subrepos, and then go up in your main project to commit that main project (it won't contains all the data, only its own data, and some pointer to the new submodules references you just committed before)

提交回复
热议问题