Git Dictionary

August 10, 2013

Branch: This is how multiple people can work on a project at the same time without Git getting them confused. When working on a specific section of the project, a user can “branch off” of the main project with their own versions full of changes they themselves have made. After they’re done, it’s time to “merge” that branch back with the “master,” the main directory of the project.

Changelog: A list of the changes made to a repository that includes commit messages, authors, and other metadata linked to each revision.

Command Line: The computer program we use to input Git commands. On a Mac, it’s called Terminal. On a PC, it must be downloaded. For both, you type text-based commands (aka prompts) into the screen, instead of using a mouse.

Commit: This is the command that gives Git its power. When you commit, you are taking a “snapshot” of your repository at that point in time, giving you a checkpoint to which you can reevaluate or restore your project to any previous state.

Fork: “Forking” is when you create a new project based off of another project that already exists. This is an amazing feature that vastly encourages the further development of programs and other projects. If you find a project on GitHub that you’d like to contribute to, you can fork the repo, make the changes you’d like, and release the revised project as a new repo. If the original repository that you forked to create your new project gets updated, you can easily add those updates to your current fork.

Git: version control software that manages changes to a project without overwriting any part of the project.

HEAD: Think of HEAD as the current branch that is being checked out. The HEAD is simply a reference to the last commit, or the “parent of your next commit”. It can be moved around by using “detached head mode”, but this is dangerous as it can alter saved work.

Master This is the default branch automatically created when you create a new repository.

Push: Sending information up to be stored on github.com’s servers

Pull: Pull requests let you tell others about changes you've made to a repository on GitHub. Once a pull request is sent, interested parties can review the set of changes, discuss potential modifications, and even push follow-up commits if necessary.

Repository: A directory or storage space where your projects can live. Users also shorten this to “repo.” It can be local to a folder on your computer, or it can be a storage space on GitHub or another online host. You can keep code files, text files, image files, etc. inside a repository.

Version control: This is Git’s main purpose When using a Microsoft Word file, you either overwrite every saved filewith a save, or you save multiple versions. With Git, you don’t have to/ It keeps “snapshots” of every point in time in the project’s history so you can never lose or overwrite it.