
Moss introduces a beginner-friendly GitLab tutorial series, outlining the roadmap, learning objectives, and target audience, and previews the first two topics covered.
Discover what GitLab is and learn the basics of Git as the instructor introduces themselves.
Meet mos, a DevOps engineer with over six years of industry experience, and get an introductory overview of the speaker for this GitLab beginner tutorial.
Explore what GitLab is, learn git basics, and navigate the GitLab interface and flow; migrate Jenkins pipelines to GitLab CI and enable packaging, releasing, and LambdaTest integration.
Master GitLab essentials by exploring GitLab CI, core Git commands, and GitLab flow, then implement CI/CD, migrate Jenkins pipelines, and deploy software with packaging and releasing features.
Ensure you have access to GitLab or a private instance with a user account and install a recent version of Git on your machine to meet prerequisites.
Discover how GitLab is an open source software development platform and a source code management system with built-in ci cd, and supports a DevOps oriented workflow.
Verify git installation with git --version, then initialize a repository using git init (optionally naming the repo) and review the default branch setup and renaming steps.
Learn how to configure git, set the default main branch, create and switch branches, add and commit files, and use git status to track changes in a repository.
Learn how the git add command transfers changes from the working directory to the staging area, enabling logically related commits and the two-stage commit process.
Learn the two-stage git commit process, using git commit with or without -m, and recognize commit messages as change metadata while configuring username and email.
Set up git configurations globally with git config --global user.name and user.email to personalize commits. Review the repository history later to inspect commits.
Review repository history using git log to view commits, metadata, and the current head on main, and manage branches with checkout, status, add, and commit for structured changes.
Learn how to merge a feature branch into the main branch using git merge, perform a fast-forward merge, and delete the feature branch after integrating its changes.
Learn to use git stash to save working directory changes with stash push, then list, apply, or pop them back, and clear stashes when finished.
Become ready to work with GitLab after mastering a few more commands, and explore major GitLab interface components, while following LambdaTest blogs, communities, and Selenium certifications.
Familiarize yourself with the GitLab interface and complete basic tasks to navigate GitLab confidently, preparing you for upcoming videos.
Provide an introduction to GitLab terminology and help you become familiar with the GitLab interface.
Explore key GitLab terms like groups and projects, and see how built-in ci/cd, issues, and merge requests support cross-project collaboration and organized workflows.
Log in or register on GitLab, explore projects dashboard, and create a project. Manage your profile, review to do list, merge requests, issues, and navigate dashboards like projects and environments.
Learn to authenticate to GitLab from the command line using a personal access token or an SSA key, and add a public key to your profile.
navigate gitlab's group dashboard to create and manage groups, configure visibility, invite members, oversee cross-project issues and merge requests, and set up group-level ci/cd, variables, and integrations.
Create a new blank GitLab project from the home page, auto-fill the name with a slug, and assign it to a group or user. Set visibility and initialize the readme.
Explore GitLab's packages and registries, publish to package and container registry, publish TerraForm modules, use the project wiki for architecture docs, and manage merge requests and protected branches.
Create a new issue in project, select an issue type (including incident), and write a markdown description with a preview. Assign, set due date and milestone, then create the issue.
Explore the GitLab flow as the primary workflow in GitLab and practice it by modifying the Rimi file, while connecting with the LambdaTest blog and community, and pursuing Selenium certifications.
Explore the GitLab flow and primary branching strategy to practice a development workflow inside GitLab, leveraging the interface for efficient collaboration.
Describe the concept of a branching strategy and explain the GitLab flow, highlighting how it differs from other branching strategies.
Learn how branching strategy defines a Git workflow that enables concurrent development using feature branches, and discover factors like team needs, tooling, deployment environments, and code structure for choosing one.
Examine the most common git branching strategies, including the GitHub flow, the git flow, and the GitLab flow, and learn how each defines development workflows.
Discover the GitHub flow, the simplest Git workflow, from creating a feature branch off main to pushing commits, opening a pull request, and merging after automated testing.
Explore git flow, the most complex workflow, with a long-lived developed branch, feature branches, release and hotfix branches, and main tagging for release versions.
Explore the GitLab flow and its variations, including environment branches and release branches, to manage feature integration, staging, hot fixes, and production deployment with merge requests and automated testing.
Master the GitLab flow by comparing long lived environment branches and release branches, promote changes through preproduction to production, and learn when to release to the outside world.
Apply the GitLab flow to the pre-created project using the environment branches variation, building practical skills from this beginner tutorial. Review the module learning objectives for practicing GitLab flow.
Sync changes between local and remote git repositories, create merge requests, and apply the GitLab flow in your own GitLab project.
Sign into GitLab, open your MOS Test project, and refine the issue to define updates to the readme, illustrating how GitLab flow starts with issue creation and defining the scope.
Use markdown syntax to create checkboxes as subtasks in GitLab issues and track completion. Establish the environment branches workflow by creating and protecting the production branch with maintainer-only access.
Clone a GitLab project to your local machine, switch to a feature branch, and modify the readme with a markdown subheader and personal details, then commit the changes.
Push local feature changes to the remote with git push, creating origin read me hyphen introduction branch, and pull from remote when needed before opening a merge request on GitLab.
Create a merge request from a feature branch into the main branch, with an automatically generated title, assign a reviewer, and use inline diff comments to request changes.
Make local changes to the readme, push updates to an open merge request, and follow the review workflow in GitLab to approve, merge, and clean up branches.
Merge main into production via a merge request with automated testing, tag a v1.0 release from production, then sync, prune remote branches, and close the related issue.
Explore GitLab’s ci/cd features and workflows within projects, building a continuous integration and delivery pipeline using the GitLab interface and GitLab flow.
Learn how GitLab pipelines integrate with a GitLab project and implement pipelines that produce artifacts, cache dependencies, and use variables, while describing the pipeline anatomy.
Define GitLab ci/cd terminology by detailing pipelines, stages, and jobs, and explain GitLab runners that execute job instructions, including shared, local, cloud, and on prem setups.
Explore a sample GitLab Maven project generated from a Maven archetype quickstart, featuring a hello world app and a test that always passes, to kick off GitLab ci/cd pipeline setup.
Create a root .gitlab-ci.yml to define a from-scratch GitLab CI/CD pipeline with build, test, and deploy stages, configuring jobs and shell scripts.
Use the GitLab pipeline editor to validate syntax and visualize build, test, lint, and deploy stages, and learn how only and on success control job execution.
Define pipeline variables for maven options and batch mode, enable maven dependency caching, and generate unit test reports as artifacts to build, test, and deploy to staging in GitLab pipelines.
Review the GitLab pipeline by examining the build, test, and deploy jobs, including Maven compilation, dependency download, caching, and test reports.
Review environments and deployments in GitLab, including staging deployments, job visibility, and how commits appear with each deployment.
Learn how to convert existing Jenkins pipelines to GitLab pipelines to harness GitLab's CI features for CI/CD, and understand the key differences in how these tools facilitate CI before migration.
Learn how to migrate from Jenkins Pipelines to GitLab Pipelines, explain the differences between them, and run tests on the Lambda Test Selenium Automation grid.
Familiarize yourself with Jenkins pipelines and terminology, and create a Lambda Test account before starting the tutorial.
Map Jenkins terms to GitLab equivalents, such as agents to runners and steps to script, compare stages, and explain environment variables and the absence of a tools directive in favor of Docker images.
Walk through the codebase and the Jenkins pipeline, then build an equivalent GitLab pipeline to run Maven tests on the Lambda Test Selenium grid, including three browser scenarios.
Navigate the ci cd section to create a single test pipeline using a maven docker image, set environment variables, enable dependency caching, and generate junit reports as artifacts.
Learn how to add and mask environment variables in GitLab, including LTE_access_token, use environment-scoped and protected settings, and manage artifacts to share builds across pipeline stages.
Explore how the artifacts keyword defines and shares build artifacts across GitLab pipeline stages, with separate OSX and Linux build jobs and selective dependencies.
Compare GitLab and Jenkins pipelines, illustrating GitLab's docker-based Maven execution with cache and g unit publisher, versus Jenkins’ tools directive and shared workspace.
Trigger a GitLab pipeline to run Maven tests on the LambdaTest Selenium grid, generating artifacts and success for Windows 10 Firefox 93, Chrome 94, and Mac OS Edge 94.
Explore GitLab CI pipelines and their packaging and releasing features, building on earlier Jenkins comparisons and a migration example, to enhance workflow automation.
Deploy artifacts from a GitLab pipeline to the GitLab package registry, and describe GitLab releases and the package container and infrastructure registries.
Explore how a GitLab project release bundles pipeline artifacts, such as platform binaries, release notes, and release evidence, and captures a snapshot of the project's source code.
Explore the GitLab package registry and learn how GitLab serves as a public or private software package registry, supports multiple package managers, and publishes pipeline packages linked to GitLab projects.
Publish and consume container images with the private GitLab container registry, a project-specific store linked to its project and groups, used to build and publish images in GitLab pipelines.
Explore the GitLab infrastructure registry to publish and share TerraForm modules from a GitLab pipeline, leveraging project infrastructure registries and defined releases.
Walks through a maven test pipeline project and its CI settings to build a GitLab pipeline, showing how to authenticate with the GitLab package registry using the CI job token.
Configure pom.xml to reference the CI_COMMIT_TAG for versioning and add a repositories tag to the GitLab Maven package registry, enabling pipelines on git tag pushes that generate snapshots.
Create a deploy-only GitLab pipeline that runs Maven deploy to the project’s package registry, using a Maven image, workflow rules for tag triggers, and caching.
Create git tag version 1.0.0 from the main branch, trigger a pipeline that deploys a Maven package to project’s registry, and learn to use it as a dependency via pom.xml.
This GitLab CI tutorial series will help you answer some fundamental questions around GitLab CI, including what is GitLab CI, how does GitLab CI work, what is GitLab workflow, etc. Also, this series deep dives into Git commands and navigates you through GitLab Interface in detail. By the end of this tutorial, you’ll know the fundamentals of GitLab CI and be able to access GitLab UI to choose the best branching strategy.
GitLab CI is a Continuous Integration and Continuous Delivery (CI/CD) server that helps development teams test code from a centralized location while providing built-in integration with Git repositories.
In this Complete GitLab CI Tutorial, Moss(@tech_with_moss), an expert in DevOps and CI/CD tools, deep dives into Git commands, navigates you through GitLab Interface, and helps creating a GitLab pipeline in detail.
By the end of this video, you will learn -:
What is GitLab CI?
Introduction to GitLab Interface
What is GitLab Workflow?
What is GitLab Flow?
How does GitLab CI work?
How to use GitLab Flow in GitLab Project?
What is GitLab Pipeline?
How to create a GitLab Pipeline?
How to Migrate from Jenkins Pipeline to GitLab CI?
What is GitLab Registry?
#GitLabCItutorial #WhatisGitlabCI #HowdoesGitlabCIwork #Whatisgitlabworkflow #Gitcommands #Gitlabinterface #AccessGitlabUI #Branchingstrategies #GitlabCi #Continousintegration #Continousdelivery #CI/CD #fundamentalsofGitLabCI #Gitrepositories