Previous Entry Share Next Entry
Interesting Links for 09-03-2012

Original post on Dreamwidth - there are comment count unavailable comments there.

That seems excessive - it means anyone working on a feature that will temporarily break things doesn't dare push anything, or they'll break the code for everyone. And if all changes are kept locally and not pushed, you don't know what people are up to (and there's no code review).

I've yet to see anything that needed to be kept locally for more than 3/4 days while it was sorted out. The code is generally broken down into loosely-coupled components well enough that changes are localised (or are in the infrastructure that ties it together, which is also localised in its own way).

(I'm not knocking git, by the way - I wish we were using it.)

One more thing which occurred to me as I was coding the other day: partial commits.

I can be in the middle of making a total mess as I figure out the best way to do something -- there's debug code all over, there's various attempts to get data out of parts of the framework, etc etc. Stuff isn't finished; the UI's half there and all that sort of thing.

But if I make a change which I know is right, I can commit just that line, while leaving everything else as is. AFAIK with SVN I'd still have to clean that file up to being suitable to add.

That alone makes git revolutionary, if hard to get your head into at first. If I'm right about SVN not supporting that, I recommend using git as a client front-end to SVN. In fact, I'd recommend doing that for the ability to have local branches alone. (If ever you've been repeatingly hitting CTRL-Z because you KNOW it was working 10 minutes ago and you've done something stupid since which broke it -- then you need local branches. But eh, at times when I say that I wonder if it's just me that's a bit of a rubbish coder ;)

You are viewing andrewducker