[Noisebridge-discuss] [dorkbotsf-blabber] Embedded code - version control experience?

Larry Edelstein ribs at acm.org
Sun Feb 19 22:21:49 UTC 2012

I've worked in software for a long time now, and feel qualified to speak on
VCS. It's changed, and you valiant garage-dwelling embedded guys and dolls
(please allow me my romantic image of y'all) shouldn't miss out on what's

The "distributed", peer-to-peer version control systems like Git,
Mercurial, and Bazaar are much better than dinosaurs like CVS, SVN,
SourceSafe, etc. for just about any project. They're different, and if
you're used to the old kind, you might be a little frustrated for a while
as you try to use this new breed of VCS in the same way you did with the
old kind, since the paradigms are somewhat different. But if you make the
investment to get used to distributed VCS, you will never go back.

When you use one of these new-wave VCS, you store your code in a repository
a server, like you're used to, but you and anyone else who works with that
code replicates most or all of that repository on their development
machine. (Now that we all have plenty of hard-drive space and low-latency
high-bandwidth networks (er, except Carl), replication is cheap.) That
makes branching and working with multiple branches utterly different and
easier than before. You can create, switch between, replicate, and merge
branches with shell commands, in seconds. (Merging conflicting changes to
the same file, of course, still often requires someone to resolve the
conflicts by hand, although automated conflict resolution continues to

Barely-connected people and teams can use locally-replicated repositories
and multiple branches to collaborate more fully than was ever possible with
old-style client-server CVS/SVN/etc. You can keep in sync or diverge
exactly as much as you want. To old-style VCS users it will seem like
science freakin' fiction, but it just works.

Certainly you should never, ever host your own VCS server again. Use
say, and your open-source projects are hosted for free. You can pay them a
few bucks a money for private hosting. There are plenty of others. Probably
though you should just use Github.

I'm happy to help anyone get set up on Github, and can provide advice from
time to time as you get started with using it.


On Fri, Feb 17, 2012 at 11:47 AM, Anders Nelson
<anders.k.nelson at gmail.com>wrote:

> Hello fine people,
> Does anyone use version control for their embedded project code? I want to
> start using MPLAB X, which has version control built into the IDE but I'm
> curious to know if using a more accepted standard (SVN, etc) is a better
> idea. Then, of course, what's the best way to organize a repository?
> Me thinks appending a new dated name to each file I modify is not the way
> to go anymore...
> =]
> --
> Anders Nelson
> www.erogear.com
> ----------
> dorkbot: people doing strange things with electricity
> http://dorkbot.org/dorkbotsf/
> http://music.columbia.edu/mailman/listinfo/dorkbotsf-blabber
> ----------
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.noisebridge.net/pipermail/noisebridge-discuss/attachments/20120219/47a5e61b/attachment.html>

More information about the Noisebridge-discuss mailing list