Mastering Git

Packt Publishing Mastering Video series

Mastering Git

An intense and detailed exploration of git, that covers a broad range of commands and operations you will use in your daily activities, with an emphasis on the details of how git works and how to use it to save you time and effort.

Key Features:

  • Expand your confidence with git and gain a better understanding of how it works
  • Learn new commands and new ways to apply commands that are already familiar
  • Loaded with directed "hands-on" exercises
  • Presented to be used as instruction now and reference later

Topic

If you are a software developer, who feels comfortable using the Command Line and have had some exposure to git you have probably developed a habit like this:

  $ git add .
  $ git commit -a
  $ git push origin master

In this series of videos, we will explore the details of how git works and provide a richer understanding and better command over your source control management.
You will gain confidence and knowledge to apply when you face those 'sticky' problems with source control using git.

Get a preview on YouTube

Brief Description

Mastering Git is an exploration of solo and collaborative Source Control Management with the intention of expanding and improving your confidence and expertise with git.
Even if you use git regularly, you will benefit from the additional insights into the commands, tools, functions and internal operations of git.
This presentation is the first of its kind since the release of Git version 2.0.

What you will learn

With Mastering Git, you will explore and learn these topics, many with "hands-on" exercises to deepen your understanding:

  • Branch, remote Branch, Topic/Feature Branch
  • Merge need not be confusing and intimidating
  • Reset and Revert. There is a reset button
  • A detailed look at the Commit Message and a philosophy on how to compose it
  • History in detail
  • Altering History to tell a better 'story' about your development project
  • Rebase is not so scary once you get to know it
  • Blame is not about calling someone out
  • Diff tool
  • Bisect is your best friend as a debugging asset
  • Patches with git
  • Submodules
  • Details and understanding of Stash
  • Aliases in git along with a set of common examples to get you started
  • A range of GUI clients for git

The Broad Sweep

Even if you feel comfortable with the rather arcane commands and strange syntax of git, there are numerous subtleties that are relatively unknown. Throughout the video, these are revealed and discussed in a friendly and engaging manner along with carefully guided exercises that provide "real world" practice.
Exploring the details of how git performs its seemingly 'magic' operations helps to clarify the sometimes puzzling behavior when working with it; saving you time and reducing worry about losing your work.

The Plot Thickens

Working on your own computer or the online editor demonstrated in the course, you will tackle scenarios like:

  • Merge conflicts that inhibit your ability to complete a 'Pull' operation
  • How to Undo when you make a mistake with git and not lose any of your work
  • Using Rebase and Squash to rewrite the git History

You will gain a clear understanding of numerous git commands (Bisect, Stash and Alias, to name a few) with "hands-on" exercises to gain valuable experience in a 'practice' environment

The git History is so important to managing a project, you will explore some philosophical ideas about how to formulate a proper Commit Message.

The Conclusion

Mastering Git will help the novice and expert alike by providing a chance to explore and uncover many subtle nuances of git commands including the differences now introduced with Git version 2.0.
Rather than jump to a web search and pore through several pages of StackOverflow questions, you will be the one with the intimate knowledge and expertise to solve that tough git situation.
Perhaps you will be the one providing answers to others in trouble!


Style and Approach

With a focus on “hands-on” exercises, this video walks through numerous commands, options and operations with git. Requiring little previous knowledge or experience this video includes details that would still be valuable to a seasoned veteran.

Search Engine Keywords: Git, Source Control Management, Software Development, SCM, Open Source, Rebase, Commit, Tree, Bisect, Diff, Blame, History, Merge, Squash

Intended Audience

If you often feel a bit puzzled or afraid when using git - on your solo projects or in collaboration with others - the Mastering Git course will help you feel more confident and comfortable.

Through very specific descriptions and a set of exercises for you to "follow along", you will gain a deeper understanding of how to use git to save time, trouble and headaches.
A little peek at the 'magic' behind-the-scenes helps you better understand and predict the way in which git will behave in any situation.


Author Bio

Thom Parkin has been writing software since the days when all phones had wires. A self-proclaimed ParaHacker, Thom immerses himself in technology both professionally and as a hobby, spending his free-time participating in the world of Open Source Software.
When he is not playing euro board games he is writing software or writing about software development.
You will see the results of this on RubySource.com, Learnable.com

Author Acknowledgments

My very special thanks to my wife, Marge for tolerating the lack of attention while I devoted all of my limited free-time to this project.
And credit to my son, Matt for his brilliant work on the original graphics elements used in the presentation.