|
Re: versioning, you can dump the registry in text format with regedit /e and save it to a text file. It's true that you can't keep an svn directory with config files like in Unix, you can still get the same with a few batch scripts that call svn update/regedit. However, more importantly, you hardly ever need to because you can do most of your server management centrally so that you never have to manually work with the registry. Secondly, it's only true in the most simple cases that you can edit config files easily. First, all config formats are different - from the bizarre (Sendmail) to fairly sensible (Apache), but each one requires separate tools/scripts. Secondly, most of them are quite hard to automate - for example most config formats ignore white space, but writing a robust 'parser' in bash/sed/awk is a major pita and something you can never quite get right. (this is what I alluded to in my previous post). I don't see how you can say 'I already have most of the tools' - you need to learn the syntax and then write a complete program to parse the files. For example, you need somewhat of a state machine to parse/edit Apache VirtualHost directives. You need to write a complete editor from scratch each time. I'm not sure what you mean with the last line. Just as with a properly set up make environment, you can compile a whole Visual Studio project with a single command from the command line. There is no way to do a bunch of things 'automatically' on Linux either (compile, run test, deploy, whatever), you still need to code them into your makefiles/deployment scripts. (I've written software on and admin'ed Linux for coming on 15 years and I've written Windows software for over 10 - I have quite a bit of experience with both. They both have good and bad sides, and I run my personal servers on Linux myself. That said, the arguments used here against Windows are plain false and reek of Slashdot-style fanboyism). |
The idea of diffing a registry dump fills my heart with horror.
> First, all config formats are different - from the bizarre (Sendmail) to fairly sensible (Apache), but each one requires separate tools/scripts.
I am quite happy editing them with vi or emacs (when available). I also like joe a lot - it reminds me of WordStar.
> you need to learn the syntax and then write a complete program to parse the files.
In about 10 years of Unix, I never had to build anything like this. And, when I wanted to parse my own config files, I always had libraries to do it ready.
> For example, you need somewhat of a state machine to parse/edit Apache VirtualHost directives. You need to write a complete editor from scratch each time.
I think you may be approaching the problem from the wrong angle. Are you trying to build a GUI tool to edit Apache configuration files?