[DUG] Source Control - Sharing files between projects
David Brennan
dugdavid at dbsolutions.co.nz
Wed Sep 26 12:26:52 NZST 2007
David> The example in the link was for an external library and I
David> can see that working well. I'm not so sure it is applicable
David> to what I am talking about. This isn't library code, it is
David> frequently changing core code which needs to be shared
David> between say 8 other projects which use the same code. It
David> must be edited within one of those projects in order for
David> changes to make sense. Potentially you will want to
David> perform the edit in any of the 8 projects because the edit
David> is part of a larger change that is centred in that project.
David> So either you have to manually merge that change into each
David> of the 7 other project branches when you check it in OR you
David> have a situation where 8 branches projects are all having
David> disjoint changes occurring.
David> I don't imagine this is what you were suggesting... ;-)
David> So if you have time I would love to hear what you mean?
> If you are the sole developer, you can have a common directory that
> all these 8 projects use. No need to branch this common code to the 8
> projects. But it's not an approach that does scale.
> So it depends on the size of your team.
I agree... but what is the approach that scales!
I am still not getting you. These are files that cannot be edited
independently of a core project (unlike say vcl library files). And you can
legitimately want to edit them from the context of each of the 8 projects.
For an example I think you are proposing:
/Reference/Core1
/Reference/Core2, 3... etc
/Project1/Unique
/Project1/Core1
/Project1/Core2, 3... etc
/Project2/Unique
/Project2/Core1
/Project2/Core2, 3... etc
... through to project 8.
But my interpretation of your model is that you are relying on editing each
of the core files within the Reference branches and then merging through to
the Project branches. But these are source files that cannot be compiled
into anything meaningful unless you are editing one of the projects.
Furthermore it is while editing one of the projects that you would want to
change one of the core files. And if developers are editing the core files a
various project branches then how do you get each of these changes reliably
merged into the other 7 projects?
Unless there is some easy way of automating or at least semi-automating this
in Perforce?
David.
More information about the Delphi
mailing list