John Blischak Introduce VCS abbreviation earlier.  almost 9 years ago

Commit id: fc105710edefe3c7a1d17f9b104c65acaf21861f

deletions | additions      

       

If you email the code to multiple people, you will have to manually incorporate all the changes each of them sends.  Fortunately, software engineers have already developed software to manage these issues: version control.   Version A version  control software system (VCS)  allows you to track the iterative changes you make to your code. Thus you can experiment with new ideas but always have the option to revert to a specific past version of the code you used to generate particular results.  Furthermore, you can record messages as you save each successive version so that you (or anyone else) reviewing the development history of the code is able to understand the rationale for the given edits.  Also, it facilitates collaboration.  Using version control software, a VCS,  your collaborators can make and save changes to the code, and you can automatically incorporate these changes to the main code base. The collaborative aspect is enhanced with the emergence of websites that host version controlled code.  In this quick guide, we introduce you to one version control system (VCS), VCS,  Git (\href{http://git-scm.com/}{git-scm.com}), and one online hosting site, GitHub (\href{https://github.com}{github.com}), both of which are currently popular among scientists and programmers in general. More importantly, we hope to convince you that although mastering a given VCS takes time, you can already achieve great benefits by getting started using a few simple commands.  Furthermore, not only does using a VCS solve many common problems when writing code, it can also improve the scientific process.  By tracking your code development with a VCS and hosting it online, you are performing science that is more transparent, reproducible, and open to collaboration \cite{23448176, 24415924}.