In our company, we are working on a product consisting of different C / C ++ modules. Ideally, each level and module should be developed separately by different teams and tested independently. We are currently sharing each module in its own branch: \
Modules:
\ hid
\ branches
\ tags
\ trunk
\ api
\ branches
\ tags
\ trunk
\ ui
\ branches
\ tags
\ trunk
Separately, product release is built by combining modules and compiling using the CI system.
\ productX
\ branches
\ 5.0
\ hid-4.0 (svn: externs \ hid \ branches \ 4.0)
\ api-3.0 (svn: externs \ api \ branches \ 3.0)
\ ui-5.0 (svn: externs \ ui \ branches \ 5.0)
\ tags
\ trunk
, , - "svn tag" . HEAD - , . , , , , - , extern. , , , , , .
? .