[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Combining files from different projects into a new project?

From: Bo Berglund <bo.berglund_at_gmail.com>
Date: Tue, 26 Dec 2017 09:00:44 +0100

I have just converted about 8 GB worth of CVS repositories (32800
files) into 9 svn repositories with a number of top level projects
each with its own set of trunk, tags and branches subfolders.

There are a number of "virtual" projects where the CVS "modules" was
used to compose a set of project unique files together with a
selection of common files from different directories into a module
that could be checked out and built.
In an earlier thread I asked about how I could simulate this in svn
and to use the "svn externals" system was adviced.

When I am now facing actually doing this I find that (unless I am
mistaken) the externals only reference whole directories, which is not
what I want. I need individual files from a couple of source
directories containing commonly used files in every such project.

Is it actually possible to do this in Subversion?

Say I have Common, PCommon and Library as top level directories on the
server repository. There are also ProjA, ProjB etc which hold project
unique files and folders.
In CVS there are modules definitions named ProjectA, ProjectB etc and
these use different selections of files from the Common, PCommon and
Library directories as well as all of the content of ProjA or ProjB

In the checkout of ProjectA there will be a structure of folders as
  |-- Cmn (selection from /Common)
  |-- Lib (selection from /Library)
  |-- PCm (selection from /PCommon)
  |-- Src (all of ProjA)

Do I now have to create new projects from scratch using files exported
from the various locations and copied into a new project structure to
be imported into svn again? This will effectively isolate the common
and library files from their sources and duplicate files into many

Bo Berglund
Developer in Sweden
Received on 2017-12-26 09:01:10 CET

This is an archived mail posted to the Subversion Users mailing list.