Immerse yourself in the dynamic world of GitLab, a leading web-based platform for version control and collaboration, through our intensive two-day course, GitLab Quick Start. Version control systems, such as GitLab, are the backbone of modern software development, enabling teams to work cohesively and maintain a structured workflow. By mastering GitLab, you can improve efficiency, encourage collaboration, and ensure accuracy and reliability within your projects, adding significant value to your organization.
Throughout the course you’ll explore various aspects of GitLab, starting from the fundamental principles of source code management to advanced concepts like rebasing and continuous integration/design. Key topics covered include Git and GitLab basics, reviewing and editing commit history, mastering GitFlow and GitLab Flow, branching and merging strategies, and understanding remote repositories. You'll also learn how to utilize Git as a debugging tool and explore the power of GitLab's built-in CI/CD capabilities.
The core value of this course lies in its practical application. You'll learn how to effectively manage changes in code with GitLab, allowing you to maintain audit trails, create reproducible software, and seamlessly move from another version control system. Then you’ll learn how to enhance your workflow efficiency using aliases for common commands, saving changes for later use, and ignoring build artifacts. You’ll also explore GitLab's CI/CD, which will enable you to automate your software delivery process. These hands-on labs will walk you through creating, merging, and synchronizing remote branches, configuring Git, troubleshooting using Git as a debugging tool, and setting up GitLab Runner for CI/CD. Each lab is designed to simulate real-world projects, offering you a first-hand experience in managing and contributing to a version control system like GitLab.
By the end of the course you'll be equipped to manage complex codebases, refine daily workflows, handle version control tasks, and integrate continuous delivery into your projects. This expertise will empower you to drive productivity and collaboration within your organization, making you an indispensable part of your team's software development lifecycle.
This course combines engaging instructor-led presentations and useful demonstrations with valuable hands-on labs and engaging group activities. Throughout the course you’ll:
- Gain a firm understanding of the fundamentals of Git and GitLab, setting a solid foundation for advanced concepts.
- Learn to effectively manage and track changes in your code, ensuring a clean and reliable codebase.
- Discover ways to streamline your daily tasks with aliases, stashing, and other GitLab workflow optimization techniques.
- Develop skills in creating, merging, and synchronizing branches, enabling seamless collaboration and version control.
- Equip yourself with the knowledge to use Git as a powerful debugging tool, saving time and effort when troubleshooting issues.
- Understand the basics of continuous integration and continuous deployment (CI/CD) in GitLab, helping you automate the software delivery process.
If your team requires different topics, additional skills or a custom approach, our team will collaborate with you to adjust the course to focus on your specific learning objectives and goals.
The introductory-level course is geared for software developers, project managers, and IT professionals seeking to enhance their understanding and practical skills in version control and collaboration using GitLab. It's also well-suited for those transitioning from another version control system to GitLab, or those responsible for software development lifecycle within their organization. Whether you are an individual looking to boost your proficiency or a team leader aiming to drive productivity and collaboration, this course will provide the necessary expertise to make the most of GitLab's capabilities.
To ensure a smooth learning experience and maximize the benefits of attending this course, you should have the following prerequisite skills:
- Basic Computing Skills: Familiarity with navigating a computer environment, including file and directory management, is a fundamental requirement.
- Understanding of Software Development: A rudimentary understanding of how software is developed and the concept of version control systems can help you grasp the course content more effectively.
- Command-Line Comfort: Some comfort with using command-line interfaces can be helpful, as many operations in GitLab can be executed via commands.
- General Coding Knowledge: A basic grasp of any programming language will allow you to better understand and implement the concepts of version control and collaboration.
Related Git / GitHub / GitLab Training Courses
The following is a small subset of our related courses. Please see our catalog for a complete list.
- TTDV7550 Introduction to Git | Git Quick Start
- TTDV7551 Introduction to GitHub for Developers
- TTDV7553 Working with GitLab
- TTDV7555 Advanced Git and GitHub
- TTDV7558 Introduction to Git, GitHub and TortoiseGit for Developers
- TTDV7560 Explore CI/CD, GIT, GIT Tools, Jenkins Integration, Functional Testing, Jenkins & More
- Please see our complete course catalog for additional Git and related course
Please note that this list of topics is based on our standard course offering, evolved from typical industry uses and trends. We’ll work with you to tune this course and level of coverage to target the skills you need most. Topics, agenda and labs are subject to change, and may adjust during live delivery based on audience skill level, interests and participation.
- Introduction to Source Code Management
- The Core Principles of Change Management
- The Power to Undo Changes
- Audit Trails and Investigations
- Reproducible Software
- Changing code-hosting platform
- Moving from another version control system
- Git and GitLab Introduction and Basics
- Introduction to Git
- GitLab Flow
- Trees and Commits
- Configuring Git
- Adding, Renaming, and Removing Files
- Reviewing and Editing the Commit History
- Reviewing the Commit History
- Revision Shortcuts
- Fixing Mistakes
- Improving Your Daily Workflow
- Simplifying Common Commands with Aliases
- Ignoring Build Artifacts
- Saving Changes for Later Use (Stashing)
- Branching Basics
- Listing Differences Between Branches
- Visualizing Branches
- Deleting Branches
- Merging Basics
- Merge Conflicts
- Merging Remote Branches
- Remote Repositories
- Remote Repositories
- Synchronizing Objects with Remotes
- Tracking Branches
- Centralizing and Controlling Access
- Introduction to GitLab
- Git Repositories on GitLab
- Daily Workflow
- Reviewing Branching and Merging
- Branch Review
- Merging Basics
- Rebasing Basics
- Rebasing with Local Branches
- Rebasing with Remote Branches
- Interactive Rebasing
- Squashing Commits
- Getting Out of Trouble
- Git as a Debugging Tool
- Using the Blame Command to See File History
- Performing a Binary Search
- Continuous Integration / Continuous Design (CI/CD)
- How to install GitLab Runner
- Adding to our example project
- Breaking down .gitlab-ci.yml
- Adding .gitlab-ci.yml to our example project
- Deconstructing an advanced .gitlab-ci.yml file
- GitLab CI/CD web UI
Optional Day Three Topics
- Optional: Resetting Trees
- Introduction to Resetting
- Resetting Branch Pointers
- Resetting Branches and the Index
- Resetting the Working Directory
- Making Good Use of the Reset Command
- Optional More on Improving Your Daily Workflow
- Interactively Staging Changes
- Optional: Including External Repositories
- Choosing Between Submodules and Subtrees
- Workflow Management
Setup Made Simple! Learning Experience Platform (LXP)
All applicable course software, digital courseware files or course notes, labs, data sets and solutions, live coaching support channels and rich extended learning and post training resources are provided for you in our “easy access, no install required” online Learning Experience Platform (LXP), remote lab and content environment. Access periods vary by course. We’ll collaborate with you to ensure your team is set up and ready to go well in advance of the class. Please inquire about set up details and options for your specific course of interest.