Version Control Systems: Fundamentals for Beginners
Pub. online: 17 October 2025
Type: Data Science Reviews
Open Access
Received
2 July 2025
2 July 2025
Accepted
6 October 2025
6 October 2025
Published
17 October 2025
17 October 2025
Abstract
When collaborating with students, colleagues and practitioners, one soon realizes the lack of efficiency when sending around emails with multiple attachments, especially if changes are made in several types of documents (for example, text, code, PDF) and simultaneously by several collaborators. Using a version control system (VCS) can largely improve joint workflows, from file sharing, including merging changes from different collaborators, to providing access to past versions of the shared work, while allowing each collaborator to work under her/his preferred setup (for example, text editor or file manager). There exists lots of technical or specialized information and literature about VCSes online, but, as often, this is rather overwhelming for beginners. Knowing the basics well is more important than getting lost in the vast amount of possible options VCSes offer. Also, the basics are sufficient to enjoy using VCSes and to see their value in collaborative work, additional features can still be picked up along the way once necessary. We focus on such fundamentals of the centralized VCS SVN and the distributed VCS Git. We explain in simple terms how these systems can be set up and interacted with to increase efficiency in collaborative workflows.
References
Chacon S, Straub B (2014). Pro Git. Apress. 2 edition. https://git-scm.com/book/en/v2.
Hofert M (2024). crop: Graphics Cropping Tool. r-forge.r-project.org/projects/crop.
Zolkifli NN, Ngah A, Deraman A (2018). Version control system: A review. Procedia Computer Science, 135: 408–415. https://doi.org/10.1016/j.procs.2018.08.191