How does Git work? A lot of people who use Git work from a small set of commands, without actually knowing what is happening behind the scenes. This might not seem like a problem, but it is; knowing how Git works is essential to making it a seamless part of your development cycle. In this talk, Steve Smith describes how Git works, from its data structures to branches — and how we can get into (and out of) trouble when working with it. If you use Git, and you don’t quite understand how it works under the hood, then this talk will help you to make sense of things, and even improve your workflow.
Many people use Git every day. And for many of them, it’s enough to be able to commit, branch, merge, push, and pull. But after a while, many Git users discover that there are lots of hidden tricks and functions hiding inside of Git. In this talk, GitHub trainer Matthew McCullough introduces many of the advanced aspects of Git, providing tips and tools that give Git users even more control over their project’s history.
Git makes a lot of sense … but only after you understand what it is doing, and what the commands mean. In this talk, Jessica Kerr introduces the concepts behind Git — not the commands or what to type, but why and how Git lets you do certain things. If you have been using Git without understanding what the commands really do,
Gerrit is an open-source, Web-based application designed to help teams to review and approve commits in Git.
Many developers are familiar with GitHub, in which each programmer maintains his or her own, separate repository. Collaboration in such an environment is based on “pull requests.” Gerrit has a completely different paradigm, one in which commits are submitted for review and comment. After reviewers have given the commit a passing grade, it is merged into the repository. A number of open-source projects, such as Wikipedia, use Gerrit in order to manage contributions.
This talk , by Gerrit maintainer Shawn Pearce, introduces Gerrit, and shows how you can use it to improve your team’s communication and usage of Git.
It’s often hard for people to understand what Git is doing, because it’s so different from other version-control systems. In this talk, Sam Livingston-Gray suggests that one way to improve your understanding of Git is to understand some math, and particularly graph theory.
This video, about the Git version-control system, is one of my favorites, and really helps to explain how tags and branches work.