Commit c3b5c007 authored by Emma Jane's avatar Emma Jane Committed by Git for Teams

Adding stub descriptions for video lessons from O'Reilly outline

1. Introduction
   Warm-up exercise
2. Getting Started
   Using GitLab
3. Downloading a Remote Repository
   Using clone
4. Getting Started as a Team of One
   Using init, add
5. Connecting to Remote Repositories
   Different ways to (re)connect files
6. Working with Branches
   One-issue-per-branch workflow
7. Working with Tags
   Dealing with detached head state
8. Finding and Fixing Bugs
   Using log, bisect, blame, stash
9. Rollbacks, Resets, and Undoing Your Work
   Amend, Checkout, Reset, Revert
10.Rebase
   Rebase, Rerere
11.Collaborating on GitHub
   Fork, Web UI, Issues, Pull Request
12.Collaborating on BitBucket
   Fork, Issues, Merge Requests
parent a715c069
# Introduction
**Welcome and Set-up**
Prepare your workstation (drawing tool; git installed)
**Warm-up Exercise**
Sketch the assembly line for your code as it exists currently, or as you think you would like it to work. Examples: centralized, peer review, automated gate keeper.
# Getting Started with Hosted Git Repositories
**Overview of permission strategies**
Most of the people I've worked with are starting out with a project they need to collaborate with. They aren't starting with an empty folder, but rather with an existing project. I personally find it easier to tinker with something rather than stare at a blank screen. So the first thing we're going to do is set you up with a practice repository that I've created. You won't be able to edit *my* copy of the project, but you will be able to make edits to your own copy. Let's start with a review of permission strategies and the way a project can be setup with Git. Overview of permission strategies: Centralized, Branched, Patched, Forked.
**Creating a GitLab Account**
GitLab is a free code hosting platform which allows you to create private, and public repositories. It's also an open source product you can install behind your own firewall if you're working with a large team. It's not the most popular system out there, but I believe it offers the most flexibility to the widest range of people watching these videos. We'll get started with GitLab, and later in the lessons, I'll show you how to migrate your project to GitHub, which is currently one of the most popular code hosting platforms for open source projects. Git is distributed because work can be easily shared across multiple hosting systems. Create a GitLab account to store your first remote repository.
**Forking Your First Project**
Fork the GitLab sample project. We are forking so that you can upload your changes to your own repository. If you cloned from this project directly to your computer you wouldn't be able to upload your changes to the project (only “privileged” users can do that).
**Privatizing Your Repository**
Adjust the visibility of your forked repository to PRIVATE. Although this is completely optional, a lot of people feel more comfortable making mistakes when they know no one will see them.
# Downloading a Remote Repository
**Overview of Git at the Command Line**
Open up the command line, and check to see which version of Git you have installed. Look at Git's short help, list of all commands, and a single command. Recommend Stack Overflow / Google in additional to the command line help.
**Cloning your GitLab repository**
Review the instructions on GitLab to get the commands you need to run to download (“clone”) the remote repository. Issue the necessary commands at the command line.
**Reviewing History with git log**
Take a look at the work done in the repository to date. Compare against what's stored in the GitLab browser.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment