Environment

Environment

At the heart of GitHub is an open source version control system (VCS) called Git, which is responsible for everything GitHub-related that happens locally on your computer.

Besides Git and GitHub you will also need a text editor, but I assume you already have one on your device.

Get Everything Set up

If you’ve never used Git or GitHub before, there are a few things that you need to do. It’s very well explained on GitHub, but repeated here for simplification.

  • Get a GitHub account.

  • Download and install Git.

  • Set up Git with your user name and email.

    • Open a Git Bash shell and type:

      $ git config --global user.name "Your name here"
      $ git config --global user.email "your_email@example.com"
    • Then store your credentials by typing:

      $ git config --global credential.helper wincred

Don’t type the $ sign, that just indicates that you’re doing this at the command line.

Learn the Basic Terminology

  • Repository - most basic element of GitHub. They're easiest to imagine as a project's folder.

  • Remote/Local - repository can be hosted on a server (our case GitHub), or on a local machine.

  • Collaborator/Contributor - contributor is someone who has contributed to a project, while collaborator is a person with read and write access to a repository who has been invited to contribute by the repository owner.

  • Downstream/Upstream - when local and remote repository are connected, remote is considered upstream, and local downstream.

  • Public/Private - private repository can only be viewed or contributed to by their creator and collaborators, public by everybody.

  • Clone - copy of a repository that lives on your computer instead of on a website's server somewhere, or the act of making that copy.

  • Fork - personal copy of another user's repository that lives on your account.

  • Branch - parallel version of a repository.

  • Pull - refers to when you are fetching in changes and merging them.

  • Commit - "snapshot" of individual change to a file (or set of files).

  • Push - refers to sending your committed changes to a remote repository.

  • Issue - suggested improvements, tasks or questions related to the repository. Issues can be created by anyone (for public repositories).

If you want to learn more about terminology, make sure to check out the detailed official GitHub glossary.

Last updated