Course info
May 23, 2012
1h 51m

Git is a popular distributed version control system (DVCS). In this course, learn how to create a local repository, commit files, push changes to a remote repository, fix errors in your commits, and many of Git's other features. Understand the difference between the working copy, staging area, and repository itself. Come learn the power of Git.

About the author
About the author

James Kovacs is a Technical Evangelist for JetBrains. He is passionate in sharing his knowledge about OO, SOLID, TDD/BDD, testing, object-relational mapping, dependency injection, refactoring, continuous integration, and related techniques.

More from the author
NHibernate Fundamentals
3h 1m
Mar 27, 2012
Continuous Integration
2h 34m
Dec 10, 2010
Section Introduction Transcripts
Section Introduction Transcripts

Introduction to Git
Hi. This is James Kovacs of Pluralsight. Welcome to Git Fundamentals. This module is going to be an introduction to the git version control system. In particular, we are going to look at a brief history of version control, an overview of the git version control system, how we can install git on a variety of different platforms, as well as configuring git.

Working Locally with Git
In this module, we're going to look at working locally with Git. We're going to start by talking about how we can create a local repository, adding files, how we can commit those pending changes to the repository, view history of commits made, looking at differences between commits in the history, the difference between the working copy, the staging area, and repository itself, the leading files, as well as, updating files, and how we can clean the working copy of any extraneous files that shouldn't be there. And then we'll wrap up with we can ignore files using a gitignore for common things like log files or build artifacts that we don't want in a repository. ( Pause )

Working Remotely with Git
In this module, we will look at Working Remotely with Git. To start with, we'll talk about cloning a remote repository to our local machine. We'll then look at how we can list off which remote repositories are associated with our local repository, how we can fetch changes from that remote, as well as merge those changes into our local working copy. We'll look at pulling from a remote, which is a combination of fetching and merging. We can also push changes remotely that we've made to our local repo. And finally, we'll wrap up with how we can work with tags.

Branching, Merging, and Rebasing with Git
In this module, we're going to talk about Branching, Merging, and Rebasing with Git. We're going to talk about how we can work with local branches. How we can stash changes that we might not want to commit right now but say for later. How we can merge branches together. Rebase commits on to another branch. How we can cherry-pick commits from one branch on to another. And also, how we can work with remote branches.