Put open source to work
July 16–17, 2018: Training & Tutorials
July 18–19, 2018: Conference
Portland, OR

Power Git: Rerere, bisect, subtrees, filter branch, worktrees, submodules, and more

Brent Laster (SAS)
9:00am12:30pm Monday, July 16, 2018
Software methodologies
Location: Portland 255
Level: Intermediate
Average rating: ****.
(4.00, 12 ratings)

Who is this presentation for?

  • Anyone who has to maintain anything in source management and uses Git

Prerequisite knowledge

  • A basic working knowledge of Git

Materials or downloads needed in advance

  • A laptop with Git (version 2.9 or higher) installed
  • A GitHub account
  • A copy of the class labs (Many people find a printed copy useful.) (link to come)

What you'll learn

  • Learn advanced Git techniques such as rerere, bisect, subtrees, filter branch, worktrees, submodules, and more


If you’re doing anything with open source these days, the chances are very high that you’re working with Git. Many people know enough of Git’s basic operations to get them through but haven’t found the time—or even know where to go—to learn about Git’s advanced functionality. Git has an immense collection of power operations and techniques that can help users simplify their development process and deal with the challenges that today’s multibranch and multirepository projects often introduce.

Join Brent Laster to take your Git skills to the next level and learn useful techniques—some that have existed in Git for years and some that were included in very recent versions—for managing your source code more easily than ever before.

Topics include:

  • How to use the rerere functionality to teach Git how to automatically resolve merge conflicts that reoccur
  • How to use the bisect functionality to quickly find where a problem was introduced in a project’s history
  • How to use the new worktrees functionality to work in multiple branches at one time in Git
  • How to use subtrees and submodules to simplify handling of multirepository projects, including the advantages, disadvantages, and differences between the two approaches
  • How to use the filter branch functionality to split subdirectories out into their own projects and remove undesirable content in history
  • How to use the built-in grep command to search in Git
  • How to use the notes functionality to annotate your Git history
Photo of Brent Laster

Brent Laster


Brent Laster is a senior manager of software development in the Research and Development Division at SAS, based in Cary, North Carolina, where he manages several groups involved with release engineering processes and internal tooling. He’s a global trainer, presenter, and author. He also serves as a resource for the use of open source technologies and conducts internal training classes in technologies such as Git, Gerrit, Gradle, and Jenkins, both in the US and abroad. In addition to corporate training, Brent creates and presents workshops for a wide variety of technical conferences. His workshops and informational sessions on open source technologies (and how to apply them) have been presented at such conferences as the Rich Web Experience/Continuous Delivery Experience, UberConf, OSCON, and others. Brent is the author of Professional Git from WROX and Jenkins 2: Up and Running and is a contributor to publications such as the No Fluff Just Stuff magazine and Opensource.com. Brent also conducts live web training courses from time to time. Brent’s passion is teaching in a way that makes difficult concepts relatable to all. He’s been involved in technical training for over 25 years and continues to seek out ways to show others how technology can be used to simplify and automate workflows.

Comments on this page are now closed.


Picture of Brent Laster
Brent Laster | SENIOR MANAGER, R&D
07/10/2018 5:16am PDT

Hi Joe, if you can message me on Linked In (link above under Website) with an email address, I can send you a copy that way.

07/10/2018 4:44am PDT

Hi Brent,
I am unable to download the pdf file from raw.githubusercontent.com, since that IP address is blocked by my company policy. Is there another method that I can get the file? Thanks.
Think Happy Thoughts,