Web update library in python?

A.T.Hofkamp hat at se-162.se.wtb.tue.nl
Wed Nov 21 03:05:15 EST 2007


On 2007-11-20, Diez B. Roggisch <deets at nospam.web.de> wrote:
> Jorgen Bodde wrote:
>
>> Hi, A.T.Hofkamp (sorry for not knowing your first name ;-),

Well Jorgen, it is at the bottom of each post (usually)... ;-)

>> SCM sounds like a term I can google for, if the tool needed is very
>> easy to install, maybe even accompany with my application to run as a
>> service for the updating, it is worth a try to find something that can
>> handle the synchronizing of distributed repositories.
>> 
>> Talking a bit more about it and hearing various solutions gave me more
>> insight in how it might be solved. Thanks everybody for your input!
>
> SCM mean source code management - like SVN or CVS.
>
> Diez

Diez is right, except my choice of the phrase 'SCM' was not exactly right. SCM
is a general term for two kinds of activities, namely version control (VC) and
configuration control. 
VC is what everybody does with SVN, CVS, darcs, bzr, git, mercurial, etc in the
context of software development (hence these tools are known as version control
systems (VCS)).

You may want to add 'distributed' to your search term.


Configuration management is much less often done. It is about controlling
deployment of some system or software. Imagine you are managing a few
(hundreds) of web sites. They all use LAMP, but exactly what Apache, Py-Mod,
Linux, hardware, is different each time. This of course also holds for the
various initialization and configuration files.
Keeping track of this data over time is called configuration management.
(and if you think this is complicated, consider what Boeing is doing for all
its air-planes... :) ).


> SVN isn't distributed, but AFAIK darcs is.
>

As Diez already guessed, SVN and CVS are organized around a central repository,
darcs, bzr, git, and mercurial do not need a central repository (although they
often can handle one if the project wants it).

The nice thing is that at least bzr and mercurial are written in Python!!


What I found very enlightening was to find the web-site of these tools, and
then read the docs about their strong and weak points w.r.t. their competitors.
Of course each of these is biased, but if you read them all, it kind of
balances out.... :)
Also, they all explain what their world model is, you should check whether that
matches with your problem.

Good luck with your search,
Albert




More information about the Python-list mailing list