Git Ready! Previous Post: Once Upon a time...

This post is governed by the Author's General Terms and Conditions of Blogging, a document that is candid about its own legal limits, appeals to your conscience more than your contract law, and is worth a read if you have three minutes and an appreciation for self-aware legalese.

Assuming you’re vaguely aware of what git is.

  • Git is a distributed Version Control System (VCS) that allows you to track changes in your code over time.
  • It’s important to understand Git’s fundamentals for effective use and to avoid confusion with other VCSs (e.g., CVS, Subversion, Perforce).
  • Git’s major difference from other VCSs is its data storage approach:
    • Other VCSs store information as a list of file-based changes (delta-based version control).
    • Git stores data as a series of snapshots of a miniature filesystem, creating a reference to each snapshot upon commit.
    • Unchanged files between commits are stored as links to previous identical files for efficiency.
  • Git’s unique approach makes it more like a mini filesystem with powerful tools built on top, rather than just a VCS.

A good resource is Git-SCM, for a complete guide to Git. Some other good tutorials are available at Altassian Git.

The history of (g)it is fascinating too if you’re interested in that piece.

For me its a saturday morning… 10:37 AM.. and i’ve done some of my chores, and i have an hour to kill.. so Play Along

The game takes you through

  • commits
  • branches (Try new ideas in different branches, till you’re ready)
  • merging
  • rabasing (i’ve had to use this when i’m working in a team where feature sets are pushed in some manner, and rebasing helps get all of the changes they made into my code)
  • moving around in git

References

  1. https://en.wikipedia.org/wiki/Git
  2. https://github.com/git/git/commit/e83c5163316f89bfbde7d9ab23ca2e25604af290
  3. Geeks-for-Geeks - History of Git
  4. Interview with Linus Torvalds
  5. u like utube?
Next Post: Please don't just say "Hi". Send a purposeful message