Skip to content

Latest commit

 

History

History
executable file
·
102 lines (67 loc) · 3.19 KB

trainer-notes.md

File metadata and controls

executable file
·
102 lines (67 loc) · 3.19 KB

Trainer Notes

Setting up a repository

git init /git clone /git config

Saving changes

git add / git commit / git diff / git stash / .gitignore

Very basic creation of commits.

interacting with the stage (index).

The first stride into stashing.

The basics of using the .gitignore file.

Inspecting a repository

git status / git tag / git blame

Undoing Commits & Changes

git checkout / git clean / git revert / git reset / git rm

Cleaning the workspace.

The first stride into branching.

Cleaning up a bit.

Reset is a powerful and slightly dangerous command if you do not know what you are doing. Go trough the three modes of resetting here.

Rewriting history

Git commit --amend and other methods of rewriting history

##amend

We might have created our commits in a suboptimal order, practice to fix that scenario here.

A lot of small commits is good when you are working locally, but for sharing your code, it might be more beneficial to deliver your code changes in large sets. Go here to experiment with that.

Should you accidentally or on purpose delete a commit, go here to try and save it.

Using Branches

git branch / git checkout / git merge

The first stride into branching.

A basic merge between diverging branches with incompatible changesets.

A tour around the most trivial of merges.

A basic merge, involving multiple diverged branches.

A merge conflict with actual code.

A merge has to be reverted, but this causes problems.

An administrative exercise, how do we move a commit that we accidentally put on the wrong branch.

Another exercise on what to do if you have accidentally committed on the wrong branch.

Using rebase as an alternative to merging.

Advanced Git

A quick exercise in using Git hooks.

Submodules are loathed by many. Run through this exercise to see what the ruckus is all about.

Discover what is going on in a Git repo, figure out what it looks like under the hood.

A small exercise into Git internals.