@Mac:
“We don’t live in a perfect world. And there is no reason to ask ‘who wrote this crap’, like the borg say, it’s [irrelevant].
Why? Because A, you, yes, YOU have to fix, modify, replace or whatever to it. B, even if you know who wrote this crap chances are very good that they are slightly less than useless to you for fixing, modifying, etc. because of the 6 month rule.”
Nope. I’ve been using an IDE with built-in SVN support (Green Hills’ MULTI) for a year-ish now, and it’s amazingly useful, just as Jeff says. In big software projects, it’s almost never the case that “you, yes, YOU” have to fix something on your own. Your job is to figure out how to fix things without breaking other things that depend on it. If you see some crap code, you can’t just barge in and remove it until you understand all the dependencies… and the best way to learn about the code is to talk to the programmer who wrote it originally.
“svn blame” is the way to find out who that original programmer is. GUI support for SVN just speeds up that finding-out process.
Non-usage scenario: “Hmm, this code looks wrong. I’ll change it… yep, it passes all our validation tests. Commit away!”
Usage scenario 1: “Hey, Bob, it looks to me like that (i = 0) on line 6235 should be (i = 1). I ran a couple of tests and I think I’m right, but since you wrote the original code, can you take a look and tell me if you agree?”
Usage scenario 2: “Actually, never mind, Bob. I looked at the commit log from when you committed that code, and I see that you mentioned bug report #7726. Indeed, that test case breaks if I change the code. I guess I didn’t understand the code as well as I should have.”