![]() ![]() ![]() (That’s apart from the main wodge of pain that is caused by git’s fundamental evil, of course.) If you’re going to use git and not expend unreasonable amounts of energy in cursing at it, then you’re going to have to learn it from the ground up. I am increasingly of the opinion that much of my git pain is caused by having accepted this innocent lie. Me: Why? I already added them before, why do I need to add them again? They: No, you have to git add the changed files first, then git commit. Me: OK, so I’ve edited these files, I’ll just git commit the changes. Like most people coming to git for the first time, I suspect, I started out with a conversation like this one, with someone who was genuinely trying to be helpful: And it’s scratching at the door to get in. remote branches, conflicted merges, totally incomprehensible error message, commands that require whole paths to be specified irrespective of the working directory, commands whose names mean something totally different from what they mean in every other version control system, and of course version identifiers that look like 23bbcf847889c1fbfbb368b27e7b4ef3648879b1 rather than, say, 1.8. Those of us who need, say, 3% of its facilities can’t just quietly go about our business using those 3% and ignore the rest, because the other 97% keeps leaping out of dark corners and landing on our heads. ![]() And that would be just fine were it not that it doesn’t degrade gracefully. So git is much more powerful and complex than I, or you, need. ![]() (Many times I’ve wished that when I made the jump from CVS, I’d gone to Subversion instead of git). All we need is something more like … well, maybe not CVS exactly, but something closer to it in spirit. And no doubt there are another handful of projects out there that really need all the git mechanism, too - GNOME, Mono, maybe the GIMP. We don’t need all that power and complexity. But everyone wants to use it anyway, and - surprise! - the air is filled with the warming glow of constant mid-air explosions, and the earth polluted with the scorched remains of epic crash-and-burns. Which of course is exactly as sensible as saying that because the Air Force has legitimate uses for the Harrier Jump Jet, we should all be using them every time we want to pop down to the chemists for a pack of peanuts. Everyone assumes, heck, if Linus needs it to co-ordinate his totally unique world-dominating monolithic operating system, which has literally thousands of contributors, then, well, gosh, I suppose I ought to use it for my tiny six-source-file project that I and two close friends work on. Yet the world has flocked to git, no doubt due to the Torvalds imprimatur. Ever he seeks to spread discord and confusion - and what better way than by the notions of local and remote branches and various kinds of links between them? Or the distinction between the working area, the repository and the freakin’ index - a concept that we’ve all got along without quite satisfactorily, thank you. When Sauron allegedly poured all his malice into the One Ring, he must have retained some wherewith to poison the sweet well of version control. … but so does a good workman, if the tools are crap.Īnd git is crap. It may be true that a bad workman blames his tools … ![]()
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |