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)

Fetching the Code

As we discussed in the previous chapter, in distributed version control, the code base is hosted at a central point from which contributors can retrieve the code, make local changes to the code base on their computers, and publish the changes to the central host.

To develop a sound grasp of the distributed fashion in which Git implements version control, we will look at some terms that are commonly used to describe the link between the code that is modified locally and the source code that is hosted on GitHub:

Upstream

Upstream refers to the hosted repository. This is the repository (and the subsequent branch that is hosted on GitHub) from which contributors can clone the repository to their local environments, make changes, and publish changes to it.

In regard to forking, upstream refers to the repository that originates from a forked repository. This is the repository from which you create a fork to your account.

Downstream

This refers to the repository...