Download Full Outline
Course
Introduction to GitLab
CompTIA Certified Badge
Explore Improving Your Daily Workflow, Branching and Merging, Rebasing, Controlling Access, Remote Repositories & More
ID:TTDV7553
Duration:2 Days
Level:Introductory
Format:

What You'll Learn

Overview

CompTIA Authorized Partner Badge

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.

Expand All

Objectives

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. 

Audience

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. 

Pre-Requisites

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. 

Agenda

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 
  • 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 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 

  • Submodules 
  • Subtrees 
  • Choosing Between Submodules and Subtrees 

 

Workflow Management 

  • Branch Management 

Follow On Courses

Working with GitLab and Terraform

Related Courses

Introduction to GitHub for Developers
Introduction to GitLab
Working with GitLab and Terraform

Connect with us

Tailor your learning experience with Trivera Tech. Whether you need a custom course offering or want to schedule a specific date and time for corporate training, we are here to help. Our team works with you to design a solution that fits your organization's unique needs; whether that is enrolling a small team or your entire department. Simply let us know how many participants you'd like to enroll and the skills you want to develop, and we will provide a detailed quote tailored to your request.

Contact Trivera Today to discuss how we can deliver personalized training that equips your team with the critical skills needed to succeed!