Git, Gitlab, Gitlab-ci

Cosmin Potocean, May/12/2020

Git

 

  • Decentralized - fully distributed
  • Supports multiple branches 
  • Can handle large developments

 

  • Created by Linus Torvalds
  • Designed to do Linux development version control

 

Git

Git

 

Git

 

  • $ git help
  • $ git init
  • $ git clone

 

 

  • $ git remote
  • $ git branch
  • $ git merge
  • $ git reset
  • $ git rebase
  • $ git tag

 

  • $ git add .
  • $ git commit
  • $ git commit -a 

 

 

  • $ git diff
  • $ git log
  • $ git show

 

  • $ git remote
  • $ git pull
  • $ git push

Git

 

google and stackoverflow support:

  • $ git log --graph --pretty=oneline --abbrev-commit

 

 

  • git generates a unique sha-1 hash for every commit
  • .gitconfig file in home folder ~
  • git workflow (google examples)
  • $ git help xyz

 

Gitlab

  • github
  • bitbucket
  • gitlab

 

There are 2 ways to run gitlab:

 

Gitlab

gitlab.com

  • has a free tier
  • limited pipelines with free tier

 

self-hosted

  • free option with community edition
  • own install, running, updates, backups, infra...
  • control your data

 

Gitlab

 

  • user settings
  • groups
  • projects

 

project overview

  • repository
  • commits
  • issues
  • wiki
  • snippets
  • settings (webhooks)

 

Gitlab-ci

 

  • what is CI / CD

Continuous Integration

Continuous Delivery or Continuous Deployment

 

 

  • it needs a gitlab server and at least one runner (still a server)
  • gitlab runner/s are doing the pipeline work

 

Gitlab-ci

 

  • simple pipeline

 

 

  • predefined environment variables
  • pipeline triggers
  • using cache
  • artifacts
  • branches
  • variables

 

Gitlab-ci

 

  • software factory example

 

Git, Gitlab, Gitlab-ci

 

Thank you!

?

Git, Gitlab, Gitlab-ci

By Cosmin P

Git, Gitlab, Gitlab-ci

  • 596