.pyc > .py ?
Roy Smith
roy at panix.com
Sat Aug 3 11:45:58 EDT 2002
"Steve Holden" <sholden at holdenweb.com> wrote:
>> Also, learn about source code control systems
Rhymes <raims at dot.com> wrote:>
> What do you mean?
A source code control system (sometimes known by the more generic term
"revision control system") is a tool which lets you store, and retrieve,
multiple versions of a file. The difference between using a revision
control system or not using one on a big development project is about as
wide a chasm as the difference between using a full screen editor and
punching cards.
The basic idea is that when you create a new file, you check it into the
revision control system. Then, every time you edit the file (or, at
least, get it to a moderately stable state), you check the new version
back in. When I'm actively working on a file, it would not be uncommon
for me to do a half dozen checkins a day. My particular choice of tools
(CVS and emacs) integrate well with each other, making this almost
effortless.
The most common free one in use today is CVS (http://www.cvshome.org/).
Somewhat older (but still popular) free systems are RCS and SCCS. On
the bleeding edge of new development in this area would be Subversion
(http://subversion.tigris.org/). I'm not yet convinced that Subversion
is going anywhere, but it's got some interesting ideas and worth
watching. There are a whole hoard of commercial systems too.
Different systems have slightly different functionality, but the basics
are pretty much the same no matter which system you use. Typically,
you'll be able to retrieve old versions, see the differences between any
pair of versions, add log messages with each new version checked in, see
a history of old versions along with timestamps, branch a file for
experimental work which you may later either discard or merge back in
with the main version, group sets of related files into packages, etc.
Some more sophisticated systems (generally the commercial ones) have
integrated text editors, bug tracking databases, modelling tools, or
even whole development environments.
Find one you like and start using it for everything you do.
More information about the Python-list
mailing list