August 26, 2012
Oooh! Reader mail!
“Upcoming Entrepreneur” writes asking whether Git is relevant for an unreleased, one-man development project.
From my standpoint, once you’ve got a 1.0 release of your software product, Git makes perfect sense to help you better control hot fixes, feature branches, and major version releases. … Am I crazy to think that I shouldn’t bother with Git until I release a 1.0?
So, just how much value does version control, and especially industrial-strength version control like Git, add to something that you’re working on alone and hasn’t even hit production yet?
Here’s what a distributed version control (DVCS) system, like Git or Mercurial, is good for at this stage of a project:
Modern editors and IDEs sometimes give you simplified alternatives to DVCS. Xcode has snapshots, AppCode has Local History, and so on. Frankly, I was never interested in these because they’re really just safety nets for use when you don’t commit often enough. You won’t need them once you are using your DVCS well (committing often, branching and merging or abandoning fearlessly, etc.). And like I said, you will need Git or something like it eventually.
If you really hate the Git command-line, by the way, there are alternatives. Mercurial is well regarded and has been called a somewhat saner approach to the whole thing. There are also nice graphical clients (I use SourceTree) but try to force yourself to stay on the command-line for as long as you can… you will learn faster.
Thanks for writing in “Upcoming Entrepreneur” and kicking my butt back into blogging. I took this as an excuse to scratch an itch and put together a simple static blogging engine based on Dropbox … because it’s all the rage.
More questions? You can always reach me on Twitter @genegoykhman.