From the course: Version Control for Everyone

Introducing the essential terminology - GitHub Tutorial

From the course: Version Control for Everyone

Start my 1-month free trial

Introducing the essential terminology

- [Instructor] As with so many things version control software has its own jargon that you'll need to grow accustomed to. Let's go over a few essential terms that come up a lot. Text versus binary files. Now, all files stored on computers are technically binary, but in this case we can say that any file that isn't plain text is considered binary. Any file can be placed in version control, but text files are especially easy to work with, as we'll see later. Repository. In the old world of version control, a repository was a server or other centralized location where all the magic happened. We're using Git, so the repository is the folder under version control. Repositories can also be hosted on servers and shared among people, but the copy you work with is by itself a repository. A commit. In this case, it means a unit of work. What comprises that unit of work is up to you or agreed upon among your team members. Basically, when you've done enough to warrant a line in your ongoing journal of work, that's probably a commit. Commit is also a verb for when you're adding an entry to your log of work. This is also sometimes called checking work in. Conversely, checking out is the general term for getting your copy of the repository. Because Git is distributed and every copy has everything, in the Git world, this is also called cloning. In version control, the main line of work is often called the trunk. A branch is a separate line of work, thought, or experimentation. You can also think of them like tributaries of a river, a separate route that might eventually return to the main river of work. One of the salient features of Git is that branching is really easy. Merging is the process by which we get our branches back to the rest of our work. In the simplest kind, you make a branch, try some stuff, hopefully like it, and bring it right back to the main line. Branching and merging can get a little complicated on project with collaborators, but for our purposes it's pretty easy. A tag in version control is a unique identifier or label, not reusable the way you see on social media and whatnot. It's a way to mark a particular spot in the work that, for example, you might want to come back to and reference later. In version control for programmers, a tag is often used to mark the release of a particular version of software, 1.0 or 2.0 or what have you, but they can be used for anything. And so those are a few of the kinds of terms that you'll see when we're discussing version control in general and in particular with Git.

Contents