1-Day Instructor-Led Training
After-Course Instructor Coaching Included
Available for Private Team Training
Introduction to Git
Course 4656
- Duration: 1 day
- Labs: Yes
- Language: English
- Level: Foundation
Software developers, data scientists, and technical writers are all harnessing the power of Git. It's an essential component of a modern workflow where it's vital that you know what's changing and need to coordinate with colleagues and clients. Whether you're a beginner eager to learn the basics, or an experienced coder seeking a better grounding, our expert-led exercises and real-world examples will equip you with the skills to master version control using Git and GitHub.
This course teaches the Git command-line. Using the command-line gives you access to the full power of Git, rather than the subset exposed by some of the graphical (GUI) tools. There is a proliferation of GUI tools, making it impossible to pick one. GitKraken is covered, briefly, as an example of a GUI tool. Mastering the Git command-line will equip you to use any GUI tool. The focus is on concepts, not tools.
Introduction to Git Delivery Methods
In-Person
Online
Upskill your whole team by bringing Private Team Training to your facility.
Introduction to Git Training Information
In this course, you will learn how to:
- Track and manage changes in your code effectively, ensuring a smooth development process.
- Facilitate teamwork by allowing multiple developers to work on different parts of a project simultaneously without conflicting changes.
- Restore previous versions of your work easily in case of errors or data loss.
- Audit changes to your code/data.
Training Prerequisites
You should have a basic level of comfort using command line interfaces (CLIs).
While not mandatory, some additional prerequisites can enhance the learning experience and ease the grasp of Git concepts and practices covered in the course.
- Familiarity with programming or data wrangling would help in understanding the value of Git.
- Knowledge of basic coding principles would facilitate understanding Git commands and workflows.
Introduction to Git Training Outline
Key Concepts of Version Control
Why Version Control?
Overview of Git
Best Practices
Git Download and Installation
Configuring Git for the First Time
Understanding the Git Environment
Tips for Beginners
Setting Up a Git Repository
Basic Git Workflow
Understanding the Staging Area and Commit History
Best Practices for Committing
Utilizing Branches for Experimentation
Branch Management
Stashing Changes
Best Practices for Branching and Stashing
Merging Branches
Resolving Merge Conflicts
Using Visual Studio Code (VSCode) for Conflict Resolution
Best Practices in Merging
Introduction to GitKraken
Basic Git Operations in GitKraken
Visualizing Branches and Commits
Managing Repositories Using GitKraken
What is Rebasing and Why Use It
Rebasing vs. Merging
Performing a Rebase
Resolving Conflicts during Rebasing
Collaboration Using Git and GitHub
Using GitHub as a Remote Repository
Creating READMEs
Sharing your work via push and pull
pull vs fetch
Feature Branch
Trunk-Based
Gitflow
Choosing the Right Workflow
Techniques to Undo Changes
Navigating History
Time Traveling in Repositories
Using Tags for Versioning
Understanding the Functionality of Reflogs
Navigating the Reflog to Find Lost Commits
Recovering Deleted Branches and Commits
Practical Examples and Scenarios
Versioning Code and Data Separately
Handling Large Files
Maintaining a Readable and Efficient History
Collaboration and Code Review
Need Help Finding The Right Training Solution?
Our training advisors are here for you.
Introduction to Git FAQs
It covers branching strategies, conflict resolution, GitHub collaboration, and best practices to ensure smooth teamwork.
It covers the use of Large File Storage (LFS) for working with large datasets.
The course introduces basic CLI commands but focuses on practical Git usage, making it accessible for beginners while gradually introducing more advanced concepts.
Many people who use Git are taught that it’s only pull/add/commit/push---which severely limits the effectiveness of the tool. This course provides a solid foundation and an understanding of a much wider set of commands.