<div>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 new.</div>
<div><br></div><div>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. </div>
<div><br></div><div>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 improve.)</div>
<div><br></div><div>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.</div>
<div><br></div><div>Certainly you should never, ever host your own VCS server again. Use <a href="http://github.com/">Github</a>, 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. </div>
<div><br></div><div>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.</div><div><br></div><div>-Larry</div><div><br></div><div><br></div><div><br>
</div><div><br><br><div class="gmail_quote">On Fri, Feb 17, 2012 at 11:47 AM, Anders Nelson <span dir="ltr"><<a href="mailto:anders.k.nelson@gmail.com">anders.k.nelson@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hello fine people,<br><br>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?<br>

<br>Me thinks appending a new dated name to each file I modify is not the way to go anymore...<br><br>=]<br clear="all">--<br>Anders Nelson<br><br><a href="http://www.erogear.com" target="_blank">www.erogear.com</a><br>
<br><br>
----------<br>
<br>
dorkbot: people doing strange things with electricity<br>
<a href="http://dorkbot.org/dorkbotsf/" target="_blank">http://dorkbot.org/dorkbotsf/</a><br>
SUBSCRIPTION AND UNSUBSCRIBE OPTIONS HERE:<br>
<a href="http://music.columbia.edu/mailman/listinfo/dorkbotsf-blabber" target="_blank">http://music.columbia.edu/mailman/listinfo/dorkbotsf-blabber</a><br>
<br>
----------<br></blockquote></div><br></div>