Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Mercurial considerations on the field



Hi!

Since I had to compile a custom kernel from current sources to do some debugging, I thought of checking out the hg repository mirror. I read in the past time on the ailing list a lot of heated discussion. I was skeptical, and... I had reason to apparently. I tried on a dual-core intel laptop with 3GB of RAM. Something fairly decent.

At first I tried over WiFi.... it interrupted after one hour or so, no error message, no nothing and "nothing" was saved Then I tried again, still WiFI, after 2 hours or so... it just looked stuck: no disk activity, no network, no CPU usage for quite some time ! I hit "ctrl-c" and it catched the signal, rolled back cleanly.

While working I noticed a quite high memory usage, in the order of 400MB or more, something that would be unbearable

Wireless coverage is very good, being in the same room of the AP.

Then I retried, but over wired ethernet. Now, after some hours, it finally finished without hiccups


I think Python is not up to the job. Sensible to network quality, low performance, high memory usage. I think the tool to work on the base system should be obtainable with the base system - so it should be written in C or C++ with minimal dependencies.

Of course this could be mitigated by having a "CVS mirror" or "SVN mirror" so that one could user other tools to check it out. I do that for example on certain systems, I check out from github using SVN.


This is just an experience of using it for a checkout, I do not enter the merit if it has better commands than git, svn or cvs. I'm a git hater as far as its commands do, how it handles conflicts and the dependencies it has when installing it. But I must admit it that regarding check-out stability, network and CPU usage it works quite well. SVN (especially over its protocol, not https) and CVS rule too: slow but steady they get the result. Also, it is usuall easy to recover with just another "svn update" or "cvs update".

If mercurial is really a good system (and apparently it should be better than git) it shold have equivalent git performances: so written in C/C++, not funky interpreters, not funky languages like Rust, Go...

Until then, let's trust CVS... it maybe slow, clunky.. but it breaks as we know.

CVS is like a wood-powered steam locomotive
SVN is like a classic diesel powered locomotive.
GIT is a high-powered pertol car, but.... they split the steering wheel in two.You have two clutch pedals to shift gears and if you break before pulling the clutch the motor explodes :)
HG is perhaps a good concept sports car, but it is built of plywood.

So you always get CVS and SVN working, git is blazing fast if you need just to spint 1/4 mile and don't steer or change anything .



Riccardo


Home | Main Index | Thread Index | Old Index