Command | Description |
---|---|
git branch |
Lists / creates and deletes branches |
git switch |
Switches between branches |
git checkout |
Switches between branches |
git merge |
Merges branches |
git merge --abort |
Aborts a merge |
git merge --squash |
Squaches commits on branch into a single commit and merge |
git branch -d feature |
Deletes the feature branch |
git stash |
Stores made changes for later use |
git stash -m "stashing message" |
Stashes your changes and includes a message |
git stash list |
Shows all of your stored stashes |
git stash apply |
Applies your latest stash |
git stash apply stash@{n} |
Applies a specific stash |
git stash pop |
Applies your latest stash and removes it from stash list |
git stash pop stash@{n} |
Applies a specific stash and removes it from stash list |
git cherry-pick <commithash> |
Applies changes from <commithash> |
git rebase |
Different way of integrating changes from two branches |
This session
In this session, you will work on the following tasks:
- Reading: Read the chapter “Branches” in the Version Control Book.
- Implementation: Try out the commands in the chapter.
- Exercises: Work on the exercises for the
recipes
project. - Quiz: Test your knowledge with the quiz.
As always:
- Try out the commands of this session and play around with them.
- Check whether you have achieved the learning objectives.
- Ask questions!
- Let’s git started!
Learning objectives
💡 You understand the purpose and benefits of using branches in Git
💡 You can create and switch between branches
💡 You can merge branches and resolve merge conflicts
💡 You can name at least three best practices when working with branches
recipes
project
At the end of this session, you should have accomplished the following:
- You created a new branch and merged changes to your main branch
- You created and resolved a merge conflict
Please keep the recipes
folder! We will continue to use it in the following sessions.
Exercises
1. Create and merge a branch
- Create a new branch called
feature
. - Switch to the new branch.
- Add a new recipe to your
recipes.txt
file. - Stage and commit the changes to your
recipes.txt
file on thefeature
branch. - Switch back to the default branch (
main
ormaster
). - Merge the
feature
branch with your default branch. - Delete the
feature
branch.
2. Create and resolve a merge conflict
- Deliberately create a merge conflict by editing the same section of a file on two separate branches and attempting to merge them. An example can be found in the Version Control Book chapter.
- Resolve the merge conflict.
- Delete the feature branch afterwards.
Slides
To print the slides to PDF, do the following:
- Toggle into Print View using the E key (or using the Navigation Menu).
- Open the in-browser print dialog (CTRL/CMD+P).
- Change the Destination setting to Save as PDF.
- Change the Layout to Landscape.
- Change the Margins to None.
- Enable the Background graphics option.
- Click Save.
Note: This feature has been confirmed to work in Google Chrome, Chromium as well as in Firefox.
Here’s what the Chrome print dialog would look like with these settings enabled:
These instructions were copied from the Quarto documentation (MIT License) and slightly modified.