Keep PHP classes (Zend, PEAR) in Subversion?
I have two projects in the same Subversion repository. They both use some standard code/classes (Zend/PEAR/phpMyAdmin 开发者_运维技巧etc) for various things. The repo is organized like this:
\shared\trunk
- stuff used by both projects\main\project1\trunk\shared
svn:external of\shared\trunk
\main\project2\trunk\shared
svn:external of\shared\trunk
This works great in the way that I only need to update the common code in one location. I am also sure it will work in both local, demo and production environments.
However, I notice that TortoiseSVN always seem to use some time checking out all there three directories everytime. And now that I have some tags and branches, it is even slower. The classes folder consists of about 3500 files and 1500 folders.
What to do? Is it good practice to keep standard classes version controlled?
Possible alternative: Drop the externals, and instead let Phing deal with exporting the classes folders?
It is a common (and good actually) practice to keep references to dependent code with svn:external
.
It really worth to wait for some time on svn up
s for getting this convenience.
精彩评论