Hello,

Can I ask a best-practices question?  I feel that what I'm doing is not
enough but I'm not sure what is the Right Thing.  I know many folks on
this list do development of various kinds.

I do a lot of web work.  I have all my material, including dB table
generation and stocking, in a versioning system (it happens to be svn).
When I am good, I try to write unit tests, functional tests, and system
tests.  I develop on a setup that is a different computer from but much
like the production system.

The part that I don't get is how people bring the material out of the
svn archive.  That is, suppose I get a bug report and I want to get all
the materials for version xxx onto my development machine (or to roll
back my production machine to version yyy).  Is there a standard way to
do that, or at least a library of often-used and debugged routines?  (I
work in Python.)  

I can't just make a lot of soft links from the svn tree to where I want
things to go for a number of reasons.  For instance, one is that
Apache's suEXEC refuses soft links.  Another is that the soft link tree
changes over time so I couldn't roll back to prior versions.  Still
another is that I need to massage some of the files (say, doing a sed to
change the permissions's owner on some dB tables).

I wrote a program that does the job for me but it is specialized to my
projects, obviously.  It has a lot of subroutines that copy to a
directory all files whose names match a regular expression, for example,
and then I call those subroutines lots of times on the exact structure
of my tree.  That seems suspiciously like I ought to be using a library,
where someone has carefully tested the routines (what if one of the
files is a soft link that points nowhere?  that got me last week).  Is
there such a thing but I missed it?

Alternatively, maybe I'm doing everything all wrong (it has happened
before :-) ).  I'd appreciate any tips.

Thanks,
Jim

Reply via email to