🌐
Reddit
reddit.com › r/gitlab › absolute beginners pipeline tutorial for gitlab pipelines?
r/gitlab on Reddit: Absolute beginners pipeline tutorial for GitLab pipelines?
April 23, 2024 -

I'm currently trying to teach myself about CI/CD. I understand the concept of pipelines, but whenever I try to dig deeper into how to actually create one and use it, I find myself staring at a wall of overwhelming information with no obvious place to grab onto and start climbing.

The background on this is (prepare to be appalled) that I've worked as a C# programmer for more than 8 years now, creating applications to be used internally within our company. Myself and my manager are the only two programmers within the company, and most of what I learned about software development, I learned from my manager, and have been doing things his way for those 8 years.

His way of deploying an application? Hit "Build" in Visual Studio, then zip up the files in the "bin/Release" folder, copy the zip file onto the target machine and extract the files. Other software developers I've told about this have been...flabbergasted.

We use github for source control, but my impression is that we don't use it the way it's supposed to be used. We both generally work on our own projects, and rarely have to integrate code, so source control is pretty much a just a way to back up our code and synchronise our home and office development machines. At the end of each day I go to the Team Explorer view in Visual Studio, commit and push my code. And if I'm working from home the next day, I pull it the same way.

So I'm looking into CI/CD from a position of (I think) near total ignorance of how this stuff is usually used. And what I'm looking for is some sort of very simple tutorial for how to do something very basic in GitLab. The simplest possible framework that I can then build from, but I haven't been able to find anything that doesn't immediately hit me with complexities that I'm not yet equipped to understand.

I want to know how, in GitLab, to set up a pipeline that will:

  1. Build my code after I push it from Visual Studio (I've figured how to push to a GitLab repo already.)

  2. Deploy it back to a specified folder on my development machine.

That's it. No testing stage or anything like that. Just push-build-deploy to a single machine. Can anyone help me with something like that?

Discussions

Absolute beginners pipeline tutorial for GitLab pipelines?
You're going into this wrong. Firstly, ask yourself a question: What problem do you want to be solved with Gitlab CI/CD or any other CI/CD tools? Gitlab CI/CD use case is deploying your code to a server automatically. It's a one-way direction. You could get it back via artefacts like other redditor has said or via some strange way but it's pointless and will cause you to turn away from Gitlab because it will end up being a big source of your stress. More on reddit.com
🌐 r/gitlab
14
12
April 23, 2024
could you someone explain like I'm five how pipelines (gitlab ci) works and why?
When you strip everything away, a pipeline is just a process you want to run in an automated way after a certain action. For example, if you want to update an app hosted on EKS whenever someone merged to main, part of the pipeline might be to use the AWS CLI to authenticate to the cluster, and then kubectl to apply manifests found in the repo. More on reddit.com
🌐 r/devops
3
4
January 7, 2022
GitHub actions or Gitlab?
They are different tools, from different vendors with the same purpose. If you're already using GitHub it's easier to go with GitHub Actions. If you're new and open, I recommend GitLab as it has some neat Terraform functions like state and module storage. But that's just a nice gimmick. Overall, they can both do the same, especially in such a simple scenario. More on reddit.com
🌐 r/Terraform
18
13
December 21, 2024
Gitlab CI vs Jenkins vs GitHub Actions
I have used all 3 now throughout different jobs and have to say that I am team GitLab CI all the way. I dont even work for Gitlab but will always praise their products. Jenkins, well everyone already said what needed to be said about it in this thread. The ONLY benefit of Jenkins is there are a shitload of stackoverflow questions and answers out there so odds are someone had a similar issue as you. It is truly the jack of all trades but master of none. Managing Jenkins versions and plugins is also its own pain in the ass as well. Gitlab CI does miss some features (like no dropdown selections when running jobs), but you can work around that pretty easily (by requiring env vars to be set on custom jobs). I find it to be more mature than GH Actions. I feel like GHA is catching up to Gitlab still but they are very similar. Everything is a bash script that runs in its own separate container which is nice. Yes you can do that with Jenkins but its all groovy. I also really like how you can import k8s clusters into Gitlab and directly deploy to them. End of the day I would choose either Gitlab CI or GH Actions any day over Jenkins. More on reddit.com
🌐 r/devops
125
140
January 7, 2023
🌐
Velotio
velotio.com › engineering-blog › create-ci-cd-pipeline-in-gitlab-in-under-10-mins
Create CI/CD Pipeline in GitLab in under 10 mins
You can track issues, host packages and registries, maintain Wikis, set up continuous integration (CI) and continuous deployment (CD) pipelines, and more. In this tutorial, you will configure a pipeline with three stages: build, deploy, test.
🌐
GeeksforGeeks
geeksforgeeks.org › devops › how-to-write-ci-cd-pipeline-using-gitlab
How To Write CI/CD Pipeline Using GitLab? - GeeksforGeeks
July 23, 2025 - Step 6: Now give the file name '.gitlab-ci.yml'. From here the main part starts. ... Step 7: Now we to define the CI/CD jobs. Let's understand what we have to write in CI/CD configuration file to create a CI/CD pipeline. We can write various stages in this file like - build, test and deploy. Jobs define the task that have to be done. Each stage can have multiple jobs like in this tutorial you'll test stage will have multiple jobs.
🌐
GitHub
github.com › ly2xxx › gitlab_lab
GitHub - ly2xxx/gitlab_lab: GitLab CI/CD Hands-on Tutorial - Learn GitLab pipelines, runners, and deployment strategies · GitHub
A comprehensive, practical guide to mastering GitLab CI/CD pipelines · This tutorial provides a comprehensive, hands-on approach to learning GitLab CI/CD through practical labs and real-world examples.
Forked by 3 users
Languages: Python 36.0% | Shell 27.7% | JavaScript 13.8% | PowerShell 11.7% | HCL 5.9% | CSS 2.1%
🌐
GitHub
github.com › topics › gitlab-pipeline
gitlab-pipeline · GitHub Topics · GitHub
A collection of drop-in gitlab pipeline steps, easy to use, sharable, maintainable.
🌐
GitLab
docs.gitlab.com › gitlab docs › use gitlab › use ci/cd to build your application › tutorials › tutorial: a complex pipeline
Tutorial: Create a complex pipeline | GitLab Docs
This tutorial walks you through configuring a progressively more complex CI/CD pipeline through small, iterative steps. The pipeline is always fully functional, but it gains more functionality with each step.
🌐
GitLab
docs.gitlab.com › gitlab docs › use gitlab › use ci/cd to build your application › pipelines
CI/CD pipelines | GitLab Docs
Stages run in sequence, while the jobs in a stage run in parallel. For example, an early stage could have jobs that lint and compile code, while later stages could have jobs that test and deploy code. If all jobs in a stage succeed, the pipeline moves on to the next stage.
Find elsewhere
🌐
GitHub
github.com › bit-tasks › gitlab-pipeline-examples
GitHub - bit-tasks/gitlab-pipeline-examples: Bit GitLab Pipeline Examples for Git CI/CD Pipelines · GitHub
image: bitsrc/stable:latest variables: GIT_USER_NAME: “git_user_name” GIT_USER_EMAIL: “git_user_email” build-job: stage: build script: - | cd my-workspace-dir gitlab.bit.init rules: - if: '$CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_BRANCH == "main"'
Author: bit-tasks
🌐
Medium
medium.com › @almaswebconsulting › the-ultimate-guide-to-gitlab-ci-cd-along-with-example-of-building-ci-cd-pipeline-for-python-8d2ca26aff7f
The Ultimate Guide to GitLab CI/CD: Along with Example of Building CI/CD Pipeline for Python | almas | Medium
April 4, 2024 - So this is an architecture of GitLab CI/CD. Let us learn how to build a simple CI/CD pipeline with GitLab. ... You get four different options to create your project. Choose any method convenient to you. In this example, we will import the project from GitHub.
🌐
DEV Community
dev.to › ankitdevcode › building-your-first-gitlab-pipeline-a-step-by-step-tutorial-563i
Building Your First GitLab Pipeline: A Step-by-Step Tutorial🚀🚀🚀 - DEV Community
August 2, 2025 - CI/CD is a continuous method of software development, where you continuously build, test, deploy, and monitor iterative code changes. Every GitLab CI pipeline starts with a YAML configuration file placed in your repository's root.
🌐
Devtron
devtron.ai › home › blog
How to build a Gitlab CI/CD pipeline in 4 Steps | Devtron
October 8, 2025 - This guide shows how to create a pipeline: ensure runners are available, create a .gitlab-ci.yml file with build, test, and deploy stages, then monitor execution through GitLab's interface.
🌐
GitHub
github.com › dokku › gitlab-ci
GitHub - dokku/gitlab-ci: A collection of gitlab-ci examples · GitHub
All examples require a SSH_PRIVATE_KEY environment variable set for the Gitlab CI pipeline. This may be set via a "secret variable". See this doc for instructions on creating a new ssh key.
Author: dokku
🌐
Hostinger
hostinger.com › home › tutorials › gitlab tutorial: how to use gitlab for project management and ci/cd
GitLab tutorial: Set up projects and pipelines
June 24, 2025 - Learn how to use GitLab for project management, set up your first CI/CD pipeline, and automate tasks with this step-by-step GitLab tutorial.
🌐
Codefresh
codefresh.io › home › devops › gitlab ci/cd › gitlab ci/cd tutorial
GitLab CI/CD Tutorial: From Basic To Advanced | Octopus Deploy
GitLab CI/CD supports creating complex pipelines to handle tasks like building, testing, and deploying applications. This tutorial walks you through progressively building such a pipeline for deploying a Docusaurus documentation site.
🌐
Medium
medium.com › @terminalsandcoffee › gitlab-ci-cd-pipeline-tutorial-9c074b0126aa
GitLab CI CD Pipeline Tutorial. If you want to follow along, you can… | by Terminals & Coffee | Medium
April 17, 2022 - A job doesn’t have to be associated with a stage, it can execute as a stand-alone job, however we do need to use the script keyword, which allows use to specify commands that the GitLab Runner assigned should execute. They execute in order. We begin to edit the code around minute 11 if you want to skip ahead the explanation he provides. We begin to remove the “sleep” statements, then we want to modify the build job to produce an executable binary file. Under the script keyword in the build job, we’re going to add another command. ... This will be our first commit, and as soon as we click commit changes, the pipeline will begin running.
🌐
TutorialsPoint
tutorialspoint.com › gitlab › gitlab_ci_cd.htm
GitLab - CI/CD
GitLab CI (Continuous Integration) service is a part of GitLab that build and test the software whenever developer pushes code to application. GitLab CD (Continuous Deployment) is a software service that places the changes of every code in the
🌐
DEV Community
dev.to › arbythecoder › how-to-set-up-a-cicd-pipeline-with-gitlab-a-beginners-guide-46b9
How to Set Up a CI/CD Pipeline with GitLab: A Beginner's Guide - DEV Community
June 11, 2024 - GitLab is a comprehensive DevOps platform that integrates source control, CI/CD, and other DevOps tools. This guide will walk you through setting up a simple CI/CD pipeline on GitLab, perfect for beginners and intermediate users.
🌐
Medium
medium.com › @ksaquib › ci-cd-pipelines-zero-to-hero-your-guide-from-beginner-to-advanced-mastery-50f2dbe6de16
CI/CD Pipelines — Zero To Hero: Your Guide from Beginner to Advanced Mastery | by Saquib Khan | Medium
December 27, 2024 - That’s why we’ll take the extra step of setting up our own self-hosted GitLab runner, giving us full control over the build environment, resource allocation, and security configurations. Whether you’re deploying to your own remote servers or planning to leverage cloud infrastructure, this guide will walk you through the entire process, from setting up the pipeline to deploying your applications.
🌐
GitHub
github.com › diffblue › gitlab › blob › master › doc › ci › pipelines › index.md
gitlab/doc/ci/pipelines/index.md at master · diffblue/gitlab
A typical pipeline might consist of four stages, executed in the following order: A build stage, with a job called compile. A test stage, with two jobs called test1 and test2. A staging stage, with a job called deploy-to-stage.
Author: diffblue