Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Best way to organize dependant projects?

I have a set of projects that depend on other projects (you can say utilities), the problem is every time I change the code of any one of these utilities my colleagues need to take the latest code and build on their machines to use the latest assemblies. Is there a good standard solution? or simply centralized the dlls on a shared folder?

P.S:

We are using MS source safe 2005 and I do not want my colleagues to take the source code everytime and build on their machines as they only need the binaries not the code.

like image 516
Ahmed Avatar asked Mar 15 '09 07:03

Ahmed


1 Answers

If you use Subversion as a Source Control system, you can use SVN Externals to do this. That way they will automaticly pull the new versions of your utilities, when they do a root update of there folder. You can also give them the Source Control, in a read only way, so they can look at the utility code, but they dont have the right to commit changes.

We use this at work, and it works perfectly. But be aware, that sometimes you don't want to update your utilities every time you do an update, as you may be breaking something by using the new version. This is something that your company must have a way to handle. We have SVN Branches (or tags) for mayor versions of the utilities, so if we change something mayor, we make a new version, and people will then have to manually change their SVN External to point to the new version if they wish.

like image 191
Jesper Blad Jensen Avatar answered Sep 29 '22 00:09

Jesper Blad Jensen