Duration
2 Days
12 CPD hours
This course is intended for
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.
Overview
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.
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.
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
GitFlow
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
Branching Basics
Listing Differences Between Branches
Visualizing Branches
Deleting Branches
Tagging
Merging
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
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: 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
Submodules
Subtrees
Choosing Between Submodules and Subtrees
Workflow Management
Branch Management