From: "Zed A. Shaw" Date: 2005-06-29T13:52:47+09:00 Subject: Re: [Project Idea] RCM - A Ruby Configuration Management System On Wed, 2005-06-29 at 12:26 +0900, Devin Mullins wrote: > Zed A. Shaw wrote: > > > > > > > > Wow. That's cool. Really. I said that out loud when I first read it, > even though nobody was in the room. > Thanks, it's kind of vaporware right now, but I am working on it by way of Ruby/Odeum. > Doesn't seem, to me, to obviate the need (well, desire) to make mv a > special operation in your RCS. For example: > 1)It would be nice to view the entire history of a file in one view, but > more importantly, > 2)How do you solve merging? This is obviously a corner case, but say: > - Dijon refactors a couple of the methods in the Person class into a > couple of smaller methods sharing one private method. > - Hellman renames the Person class to User (and renames the file to > user.rb), and modifies all the client code. Ah yes, the "industrial autism" corner case. Heaven forbid developers should actually have to talk to each other. Oh no, it's the RCS system's job to figure out what the developers "mean" (even though computers are really, really bad at meaning). My philosophy on these weird merge cases is this: The two developers who insist on "refactoring" their code wildly without communicating should be forced into a room with nothing but dull butter knives and a bucket of rock salt. Whichever developer comes out alive gets to have their changes in the repository. Then again, they could also just get off their ass and talk to the coder next to them. Oh, and maybe plan out what they're going to do before they do it. That would be great. You know, maybe tell everyone you plan to hack the User class today? I hear that daily meetings are really good places to mention these things. Something simple like, "Hey, I plan to refactor the User class file..." That'd kick ass. Oh wait, that would mean developers would actually have to work like a team rather than a bag of cats fighting over a moldy tin of tuna. Which brings up my other dream feature: Using the Linda ring to tell people when Joe Moron starts to mangle code before coordinating with others. It's kind of hard to have conflicts and double changes when everyone knows you're in there breaking/fixing stuff. Anyway, stay tuned while I get things in gear again. Sorry for the rant. Zed