Book Image

Version Control with Git and GitHub

By : Alex Magana, Joseph Muli
Book Image

Version Control with Git and GitHub

By: Alex Magana, Joseph Muli

Overview of this book

<p>Introduction to Git and GitHub begins with setting up and configuring Git on your computer along with creating a repository and using it for exercises throughout the book. With the help of multiple activities, you’ll learn concepts that show various stages of a file—from when it is untracked to when it is set for tracking under version control. As you make your way through the chapters, you’ll learn to navigate through the history of a repository, fetch and deliver code to GitHub, and undo code changes. </p><p> </p><p>The first half of the book ends with you learning to work with branches, storing and retrieving changes temporarily, and merging the desired changes into a repository. </p><p> </p><p>In the second half, you’ll learn about forking as part of a collaborative workflow. You’ll also address modularity and duplication through submodules, tracing and rectifying faulty changes, and maintaining repositories. </p><p> </p><p>By the end of this book, you will have learned how to effectively deploy applications using GitHub.</p>
Table of Contents (8 chapters)

Introduction

In the previous chapter, we covered the concept of versioning commits. Then, we compared commits, branches, indexes, and working trees, and how they relate to each other. Finally, we demonstrated how to amend commits, such as arbitrary commits.

Through exploring workflow terminology, the GitHub UI, and Git toolkit commands, you developed skills for the implementation of version control using Git and GitHub. You established the states that a file exists in, from the point that it's created and untracked in the working directory to when it's tracked and all of the changes in the file that are monitored and persisted through a commit.

In this chapter, we'll explore how to configure local repositories to communicate with the hosted repository. To regulate the process of accepting local changes, we'll implement restrictions that enforce benchmarks that, once achieved, will ensure the prevention of error causing changes. We'll look at how we can...