Read the entire Comparing Workflows tutorial from Atlassian, except for the "Gitflow Workflow" section, which is optional.
It's a solid overview of all of the commands that we've learned and an introduction to common patterns that developers use to save their work with Git. Pay particular attention to the "Feature Branch Workflow" section. It's okay if you don't understand the workflows themselves. For now, focus on how the commands are being used and how the changes are visualized. This should take about an hour.
If you have any questions during these tutorials, then review your class notes and our talk repositories. To do that, navigate to the General Assembly WDI Boston organization on GitHub and use the search box to find our Git repositories.
<img width="400" alt="general_assembly_wdi_boston" src="https://cloud.githubusercontent.com/assets/388761/10182069/3932739e-66ee-11e5-8763-aa99f76510bf.png">
First, let's review the basic Git commands using CodeSchool's excellent, free Try Git tutorial. This should take somewhere between 15 and 30 minutes to complete.
We'll focus on visualizing Git commands, especially branching, by working on Learn Git Branching in this tutorial. Complete all of the exercises in the following sequences:
Main > Introduction Sequence
, levels 1 and 2Main > Ramping Up
, all levels<img width="400" alt="learn_git_branching main tab" src="https://cloud.githubusercontent.com/assets/388761/15299488/96c89c52-1b72-11e6-8e4d-4ce2e4268822.png">
Remote > Push & Pull
, levels 1 through 6Remote > To Origin and Beyond
, levels 1 and 3<img width="400" alt="learn_git_branching remote tab" src="https://cloud.githubusercontent.com/assets/388761/15299518/c0362988-1b72-11e6-92fb-d33d1053a964.png">
Each level in Learn Git Branching will explain the concepts that you are expected to use to solve the level. Think of these as instructions and don't skip them!
<img width="400" alt="learn_git_branching instructions for level 1" src="https://cloud.githubusercontent.com/assets/388761/15299755/bf8f3b90-1b73-11e6-9325-cbbac378b46f.png">
You'll have an interactive shell to complete each challenge, help buttons that display the goal, and a visualization of what the end goal should look like.
<img width="400" alt="learn_git_branching interface" src="https://cloud.githubusercontent.com/assets/388761/15299932/5b266254-1b74-11e6-930f-659a8583c111.png">
This will take longer. If you spend more than an hour on this, then please let a consultant know. Some of the Atlassian Git Tutorials may be good references if you get stuck.
If you need more review, then continue by working through the free chapter of CodeSchool's Interactive Git Tutorial.
You may also want to practice targeted review with Learn Version Control with Git, one of the best intermediate references available for free online. If you're not satisfied with how well you understand a topic, then scan the table of contents and give yourself a set amount of time to review it. After time is up, move on! This practice is called timeboxing and it is a great way to avoid getting off track.
Finally, review some of the great visuals provided at A Visual Git Reference. These diagrams are more detailed and offer annotations that may help you understand how Git works. They also make a great reference for later, especially if you don't want to replay Learn Git Branching again.
Once you have completed all of the required readings and the required tutorials,
checkout to a new branch, response
, and answer the questions in response.md
.
Don't hesitate to add anything else that you want to let us know about your
experience with this practice or the course so far. After you've answered the
questions, create a pull request with your response.