Not Very Advanced Git

Introduction

Expectations: Intermediate level of Git knowledge.

The Goal: To make git operations intentional, thinkful and fearless. 1*0o9GZUzXiNnI4poEvxvy8g.png

The Approach

The VCS isn't just a tool for storing few versions of the project, but a part of software development process.

https://chris.beams.io/posts/git-commit/

Status and History

1*zw0bLFWkaAP2QPfhxkoDEA.png

Worktree (Untracked + Unstaged) Index (Staged) Repository (Committed)

  • j
  • imenu

Exchange and Share

  • Remotes
  • Pull and Fetch

Review and Blame

  • Diff
    magit-diff-toggle-refine-hunk
    Show changes inside hunk.
  • Log
  • Blame

Commit and Rewrite

Stash
Temporary hiding or saving changes.
Commit
Persisiting changes.
  • Hunks
  • Extend
  • Reword
  • Ammend
  • Squash
  • Fixup
  • transient git gutter
Branch
Switching between changesets.
Revert
Creating new commits with discards changes.
Reset
Removing commits and changes.
Rebase
Rewriting the history.

Conclusion

Hope the Git is less magical for you now.

Links