Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

1 Introduction to Version Control

It starts innocently with adding “final” to a filename, which soon turns into “final_final,” and before you know it, you’re staring at a folder full of files like “final_version_really_this_time.docx.” If this sounds familiar, you’re not alone. This chaotic approach to managing changes is not only messy but also risky, making it difficult to track your project’s history and collaborate with others.

To solve this, we use Version Control Systems (VCS). A VCS is a tool that helps you manage your project’s history, allowing you to save “snapshots” of your work at any time. The ability to track versions and collaborate with others without mixing up work is a critical requirement for any modern software project.

This chapter introduces you to the fundamentals of version control using Git, the world’s most popular version control system. We will guide you through using Git in three common environments:

What You’ll Learn in This Chapter

By the end of this chapter, you will be able to:

References