SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Downloaden Sie, um offline zu lesen
GitLab as an Alternative Development 
Platform for Github.com 
LinuxCon Europe 2014 October 13, 2014 
Ralf Lang 
Linux Consultant / Developer 
B1 Systems GmbH 
lang@b1-systems.de 
B1 Systems GmbH - Linux/Open Source Consulting, Training, Support & Development
Introducing B1 Systems 
founded in 2004 
operating both nationally and internationally 
more than 60 employees; low employee turnover 
Provider for IBM, SUSE, Oracle & HP 
vendor-independent (hardware and software) 
Focus: 
Consulting 
Support 
Development 
Training 
Operations 
Solutions 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 2 / 26
Areas of Expertise 
Virtualization (XEN, KVM & RHEV) 
Systems management (Spacewalk, Red Hat Satellite, SUSE 
Manager) 
Configuration management (Puppet & Chef) 
Monitoring (Nagios & Icinga) 
IaaS Cloud (OpenStack & SUSE Cloud) 
High availability (Pacemaker) 
Shared Storage (GPFS, OCFS2, DRBD & CEPH) 
File Sharing (ownCloud) 
Packaging (Open Build Service) 
Providing on-site systems administration and/or development 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 3 / 26
Partners 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 4 / 26
GitLab – An Open Source Software to 
Collaborate on Code 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 5 / 26
Why Managed Version Control? 
easy management of privileges 
inline feedback options 
enforce reviews 
spend time coding, not managing tools and users 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 6 / 26
Why Should I run my own VCS? 
firm control over source code access 
no external parties involved 
dedicated resources 
easily integrates with custom tools and reports 
keep sensitive information in-house 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 7 / 26
What is GitLab? 
GitLab is an Open source software to collaborate on code. 
GitLab is based on Git, the most widely adopted version control 
system for software development. 
GitLab helps to ensure software quality by providing a 
feature-rich review system. 
GitLab simplifies distributed working on projects with a 
centralized server. 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 8 / 26
Some GitLab Features 
code review 
bug tracking 
personal and private branches 
management of numerous Git repositories 
25,000 users on a single server 
highly available active/active cluster possible 
code snippets 
access control 
issue tracking 
Web hooks 
Wiki 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 9 / 26
GitLab is Collaborative 
unlimited number of public and private repositories 
unlimited number of public and private collaborators 
integrates with LDAP 
integrates with external ticket systems e.a. Redmine 
Omnibus package supports configuring an external database 
(PostgreSQL or MySQL) 
works with JIRA for issue tracking 
displays merge request status for builds on Jenkins CI 
(only Enterprise Edition) 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 10 / 26
Who Else Uses GitLab? 
More than 100,000 organizations, amongst others: 
AT&T 
Bell 
CERN 
Fraunhofer 
Interpol 
NASA 
Red Hat 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 11 / 26
Who Works on GitLab? 
since September 2011 
an active community with hundreds of contributors 
managed by GitLab.com 
Enterprise support by GitLab B.V. 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 12 / 26
Traditional Git Workflow 
1 Clone the repository. 
2 Create a branch. 
3 Modify source code. 
4 Check in. 
5 Create a patch or push changes to upstream. 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 13 / 26
Disadvantages & Drawbacks 
Write access: 
Every committer needs write access on projects. 
) intended workflows could be omitted 
Format patch: 
Every committer submits his patches and has to wait for the 
maintaining of a reviewer. 
) still a labor-intensive and error-prone process 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 14 / 26
The Gitlab Workflow 
1 Fork repository into own name space. 
2 Full access to own forked copy. 
3 Edit online in browser or in local checkouts. 
4 Create Merge Request. 
5 Reviewer comments on diffs on the platform. 
6 Automated process for pulling forks back into the mainstream 
repository. 
) no need to grant or revoke access 
) no hassle with long threads of patch e-mails 
) enforces review paradigms 
) little setup costs for additional team members 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 15 / 26
Internal Issue/Review System 
APIs for external ticketing 
access Redmine tickets through commit messages in Git 
or use internal ticketing 
API for Gitlab CI 
continuous Integration: Automated builds and test suite runs on 
commit 
improved software quality 
use dead code detectors or code coverage tools 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 16 / 26
Access Control 
GitLab provides an access control for user and groups based on 
permission levels. 
Users’ abilities depend on their access level on a particular 
project or group. 
If a user is both in a project group and in the project itself the 
highest permission level is used. 
The GitLab administrator receives all permissions. 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 17 / 26
GitLab Continuous Integration 
integrates with the GitLab installation to run tests for projects 
login with GitLab account 
Simply add projects with one click 
on-premises software: can be installed on arbitrary (Linux) 
server(s) 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 18 / 26
The GitLab Dashboard – Project Overview 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 19 / 26
The GitLab Dashboard – Commits 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 20 / 26
The GitLab Dashboard – Workflow 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 21 / 26
The GitLab Dashboard – New Project 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 22 / 26
The GitLab Dashboard – Projects 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 23 / 26
The GitLab Dashboard – Project Files 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 24 / 26
More Information on GitLab . . . 
GitLab.com: 
GitLab.com 
GitLab Continuous Integration (CI): 
https://about.gitlab.com/gitlab-ci/ 
Official GitLab Documentation: 
http://doc.gitlab.com/ce/ 
B1 Systems GmbH 
GitLab as an Alternative Development 
Platform for Github.com 25 / 26
Thank you for your attention! 
For further information, please contact: 
info@b1-systems.de or +49 (0)8457 - 931096 
B1 Systems GmbH - Linux/Open Source Consulting, Training, Support & Development

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

How Git and Gerrit make you more productive
How Git and Gerrit make you more productiveHow Git and Gerrit make you more productive
How Git and Gerrit make you more productive
 
Why you can't ignore GitLab
Why you can't ignore GitLabWhy you can't ignore GitLab
Why you can't ignore GitLab
 
How to use any static site generator with GitLab Pages.
How to use any static site generator with GitLab Pages. How to use any static site generator with GitLab Pages.
How to use any static site generator with GitLab Pages.
 
How we scaled git lab for a 30k employee company
How we scaled git lab for a 30k employee companyHow we scaled git lab for a 30k employee company
How we scaled git lab for a 30k employee company
 
Git n git hub
Git n git hubGit n git hub
Git n git hub
 
Git & Github
Git & GithubGit & Github
Git & Github
 
沒有 GUI 的 Git
沒有 GUI 的 Git沒有 GUI 的 Git
沒有 GUI 的 Git
 
What's New for GitLab CI/CD February 2020
What's New for GitLab CI/CD February 2020What's New for GitLab CI/CD February 2020
What's New for GitLab CI/CD February 2020
 
Git and GitHub | Concept about Git and GitHub Process | Git Process overview
Git and GitHub | Concept about Git and GitHub Process | Git Process overviewGit and GitHub | Concept about Git and GitHub Process | Git Process overview
Git and GitHub | Concept about Git and GitHub Process | Git Process overview
 
FOSDEM 2017: GitLab CI
FOSDEM 2017:  GitLab CIFOSDEM 2017:  GitLab CI
FOSDEM 2017: GitLab CI
 
Jenkins vs GitLab CI
Jenkins vs GitLab CIJenkins vs GitLab CI
Jenkins vs GitLab CI
 
Brief tutorial on Git
Brief tutorial on GitBrief tutorial on Git
Brief tutorial on Git
 
Gitlab Training with GIT and SourceTree
Gitlab Training with GIT and SourceTreeGitlab Training with GIT and SourceTree
Gitlab Training with GIT and SourceTree
 
Intro to Git & GitHub
Intro to Git & GitHubIntro to Git & GitHub
Intro to Git & GitHub
 
Git for Beginners
Git for BeginnersGit for Beginners
Git for Beginners
 
Introduction to Git and GitHub Part 1
Introduction to Git and GitHub Part 1Introduction to Git and GitHub Part 1
Introduction to Git and GitHub Part 1
 
Introducing GitLab
Introducing GitLabIntroducing GitLab
Introducing GitLab
 
Git & git hub
Git & git hubGit & git hub
Git & git hub
 
A prentation on github
A prentation on githubA prentation on github
A prentation on github
 
Introduction to GitHub Actions
Introduction to GitHub ActionsIntroduction to GitHub Actions
Introduction to GitHub Actions
 

Andere mochten auch

Introduction to Gitlab
Introduction to GitlabIntroduction to Gitlab
Introduction to Gitlab
Julien Pivotto
 
Paisajes de asturias sara
Paisajes de asturias saraPaisajes de asturias sara
Paisajes de asturias sara
Ofelia Lopez
 
Handbuch der Import und Exportfunktionen der Schlüsselverwaltung TSObjektkey 5
Handbuch der Import und Exportfunktionen der Schlüsselverwaltung TSObjektkey 5Handbuch der Import und Exportfunktionen der Schlüsselverwaltung TSObjektkey 5
Handbuch der Import und Exportfunktionen der Schlüsselverwaltung TSObjektkey 5
Thomas Schoessow
 
Information Sojall Desy Clean
Information Sojall Desy CleanInformation Sojall Desy Clean
Information Sojall Desy Clean
Lars Gather
 

Andere mochten auch (19)

GitFlow, SourceTree and GitLab
GitFlow, SourceTree and GitLabGitFlow, SourceTree and GitLab
GitFlow, SourceTree and GitLab
 
Continuous Deployment with Kubernetes, Docker and GitLab CI
Continuous Deployment with Kubernetes, Docker and GitLab CIContinuous Deployment with Kubernetes, Docker and GitLab CI
Continuous Deployment with Kubernetes, Docker and GitLab CI
 
Introduction to Gitlab
Introduction to GitlabIntroduction to Gitlab
Introduction to Gitlab
 
Using GitLab CI
Using GitLab CIUsing GitLab CI
Using GitLab CI
 
CI with Gitlab & Docker
CI with Gitlab & DockerCI with Gitlab & Docker
CI with Gitlab & Docker
 
Idea to Production - with Gitlab and Kubernetes
Idea to Production  - with Gitlab and KubernetesIdea to Production  - with Gitlab and Kubernetes
Idea to Production - with Gitlab and Kubernetes
 
GitLab 8.5 Highlights and Step-by-step tutorial
GitLab 8.5 Highlights and Step-by-step tutorialGitLab 8.5 Highlights and Step-by-step tutorial
GitLab 8.5 Highlights and Step-by-step tutorial
 
GitLab 8.6 - Release Webcast
GitLab 8.6 - Release Webcast GitLab 8.6 - Release Webcast
GitLab 8.6 - Release Webcast
 
Breaking Bad Habits with GitLab CI
Breaking Bad Habits with GitLab CIBreaking Bad Habits with GitLab CI
Breaking Bad Habits with GitLab CI
 
Up GitLab Presentation 2015
Up GitLab Presentation 2015Up GitLab Presentation 2015
Up GitLab Presentation 2015
 
Dss02.51 del 25 del 11 de 1962
Dss02.51 del 25 del 11 de 1962Dss02.51 del 25 del 11 de 1962
Dss02.51 del 25 del 11 de 1962
 
Paisajes de asturias sara
Paisajes de asturias saraPaisajes de asturias sara
Paisajes de asturias sara
 
Pascual sem1
Pascual sem1Pascual sem1
Pascual sem1
 
Handbuch der Import und Exportfunktionen der Schlüsselverwaltung TSObjektkey 5
Handbuch der Import und Exportfunktionen der Schlüsselverwaltung TSObjektkey 5Handbuch der Import und Exportfunktionen der Schlüsselverwaltung TSObjektkey 5
Handbuch der Import und Exportfunktionen der Schlüsselverwaltung TSObjektkey 5
 
LA CRÓNICA 598
LA CRÓNICA 598LA CRÓNICA 598
LA CRÓNICA 598
 
Catálogo de Produtos FlexFab
Catálogo de Produtos FlexFabCatálogo de Produtos FlexFab
Catálogo de Produtos FlexFab
 
1ª Parte PERCEPÇÃO DO URBANO A PARTIR DE IMAGENS GEOFOTOGRÁFICAS DO MUNICÍPIO...
1ª Parte PERCEPÇÃO DO URBANO A PARTIR DE IMAGENS GEOFOTOGRÁFICAS DO MUNICÍPIO...1ª Parte PERCEPÇÃO DO URBANO A PARTIR DE IMAGENS GEOFOTOGRÁFICAS DO MUNICÍPIO...
1ª Parte PERCEPÇÃO DO URBANO A PARTIR DE IMAGENS GEOFOTOGRÁFICAS DO MUNICÍPIO...
 
Ser móvil. de por que a cómo
Ser móvil. de por que a cómoSer móvil. de por que a cómo
Ser móvil. de por que a cómo
 
Information Sojall Desy Clean
Information Sojall Desy CleanInformation Sojall Desy Clean
Information Sojall Desy Clean
 

Ähnlich wie GitLab as an Alternative Development Platform for Github.com

Git Gerrit Mit Teamforge
Git Gerrit Mit TeamforgeGit Gerrit Mit Teamforge
Git Gerrit Mit Teamforge
CollabNet
 

Ähnlich wie GitLab as an Alternative Development Platform for Github.com (20)

Git tech
Git techGit tech
Git tech
 
GitHub Vs GitLab | What Are The Major Difference?
GitHub Vs GitLab | What Are The Major Difference?GitHub Vs GitLab | What Are The Major Difference?
GitHub Vs GitLab | What Are The Major Difference?
 
Difference between Github vs Gitlab vs Bitbucket
Difference between Github vs Gitlab vs BitbucketDifference between Github vs Gitlab vs Bitbucket
Difference between Github vs Gitlab vs Bitbucket
 
Github Case Study By Amil Ali
Github Case Study By Amil AliGithub Case Study By Amil Ali
Github Case Study By Amil Ali
 
Contributing to Automotive Grade Linux (AGL) and GENIVI Development Platform ...
Contributing to Automotive Grade Linux (AGL) and GENIVI Development Platform ...Contributing to Automotive Grade Linux (AGL) and GENIVI Development Platform ...
Contributing to Automotive Grade Linux (AGL) and GENIVI Development Platform ...
 
Introduction to Git for Network Engineers (Lab Guide)
Introduction to Git for Network Engineers (Lab Guide)Introduction to Git for Network Engineers (Lab Guide)
Introduction to Git for Network Engineers (Lab Guide)
 
Webinar: Capabilities, Confidence and Community – What Flux GA Means for You
Webinar: Capabilities, Confidence and Community – What Flux GA Means for YouWebinar: Capabilities, Confidence and Community – What Flux GA Means for You
Webinar: Capabilities, Confidence and Community – What Flux GA Means for You
 
Git Gerrit Mit Teamforge
Git Gerrit Mit TeamforgeGit Gerrit Mit Teamforge
Git Gerrit Mit Teamforge
 
SCM (Source Control Management) - Git Basic
SCM (Source Control Management) - Git Basic SCM (Source Control Management) - Git Basic
SCM (Source Control Management) - Git Basic
 
Giddy Up on GitHub
Giddy Up on GitHubGiddy Up on GitHub
Giddy Up on GitHub
 
August OpenNTF Webinar - Git and GitHub Explained
August OpenNTF Webinar - Git and GitHub ExplainedAugust OpenNTF Webinar - Git and GitHub Explained
August OpenNTF Webinar - Git and GitHub Explained
 
Agile Network India | Continuous Integration & Continuous Deployment & Automa...
Agile Network India | Continuous Integration & Continuous Deployment & Automa...Agile Network India | Continuous Integration & Continuous Deployment & Automa...
Agile Network India | Continuous Integration & Continuous Deployment & Automa...
 
DevOps Service | Mindtree
DevOps Service | MindtreeDevOps Service | Mindtree
DevOps Service | Mindtree
 
Using Git to Organize Your Project
Using Git to Organize Your ProjectUsing Git to Organize Your Project
Using Git to Organize Your Project
 
Git Demo
Git DemoGit Demo
Git Demo
 
The (r)evolution of CI/CD on GitHub
 The (r)evolution of CI/CD on GitHub The (r)evolution of CI/CD on GitHub
The (r)evolution of CI/CD on GitHub
 
Git
GitGit
Git
 
DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016
DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016
DevOps with OpenShift - Fabien Dupont - ManageIQ Design Summit 2016
 
You can git
You can gitYou can git
You can git
 
Optimize Your Enterprise Git Webinar
Optimize Your Enterprise Git WebinarOptimize Your Enterprise Git Webinar
Optimize Your Enterprise Git Webinar
 

Mehr von B1 Systems GmbH

Mehr von B1 Systems GmbH (20)

Ubuntu-/Debian-Packaging
Ubuntu-/Debian-PackagingUbuntu-/Debian-Packaging
Ubuntu-/Debian-Packaging
 
Ubuntu-Server als Backup- und Fileserver betreiben
Ubuntu-Server als Backup- und Fileserver betreibenUbuntu-Server als Backup- und Fileserver betreiben
Ubuntu-Server als Backup- und Fileserver betreiben
 
Android mit Google Befreiung, PlayStore Apps im eigenen Repo
Android mit Google Befreiung, PlayStore Apps im eigenen RepoAndroid mit Google Befreiung, PlayStore Apps im eigenen Repo
Android mit Google Befreiung, PlayStore Apps im eigenen Repo
 
Ambilight, Raspberry Pi, Ubuntu & Hyperion
Ambilight, Raspberry Pi, Ubuntu & HyperionAmbilight, Raspberry Pi, Ubuntu & Hyperion
Ambilight, Raspberry Pi, Ubuntu & Hyperion
 
B1 Thin Client Management bei der Fraport AG
B1 Thin Client Management bei der Fraport AGB1 Thin Client Management bei der Fraport AG
B1 Thin Client Management bei der Fraport AG
 
Salt - A Scalable Systems Management Solution for Datacenters
Salt - A Scalable Systems Management Solution for DatacentersSalt - A Scalable Systems Management Solution for Datacenters
Salt - A Scalable Systems Management Solution for Datacenters
 
Systemmanagement mit Puppet und Foreman
Systemmanagement mit Puppet und ForemanSystemmanagement mit Puppet und Foreman
Systemmanagement mit Puppet und Foreman
 
Ausrollen von Multi-Tier-Applikationen mit Docker
Ausrollen von Multi-Tier-Applikationen mit DockerAusrollen von Multi-Tier-Applikationen mit Docker
Ausrollen von Multi-Tier-Applikationen mit Docker
 
Simplify and run your development environments with Vagrant on OpenStack
Simplify and run your development environments with Vagrant on OpenStackSimplify and run your development environments with Vagrant on OpenStack
Simplify and run your development environments with Vagrant on OpenStack
 
Simplify and run your development environments with Vagrant on OpenStack
Simplify and run your development environments with Vagrant on OpenStackSimplify and run your development environments with Vagrant on OpenStack
Simplify and run your development environments with Vagrant on OpenStack
 
Bits and Bytes im Flow - Netzwerk im Wandel der Zeit
Bits and Bytes im Flow - Netzwerk im Wandel der ZeitBits and Bytes im Flow - Netzwerk im Wandel der Zeit
Bits and Bytes im Flow - Netzwerk im Wandel der Zeit
 
End of the Road - Facing Current Scaling Limits within OpenStack
End of the Road - Facing Current Scaling Limits within OpenStackEnd of the Road - Facing Current Scaling Limits within OpenStack
End of the Road - Facing Current Scaling Limits within OpenStack
 
OpenStack und Heat - Standardisierte Test- und Entwicklungsumgebungen
OpenStack und Heat - Standardisierte Test- und EntwicklungsumgebungenOpenStack und Heat - Standardisierte Test- und Entwicklungsumgebungen
OpenStack und Heat - Standardisierte Test- und Entwicklungsumgebungen
 
systemd im Alltag
systemd im Alltagsystemd im Alltag
systemd im Alltag
 
E-Mail-Verschlüsselung mit GnuPG
E-Mail-Verschlüsselung mit GnuPGE-Mail-Verschlüsselung mit GnuPG
E-Mail-Verschlüsselung mit GnuPG
 
Some Bashing II - Mit der Kommandozeile Abläufe automatisieren
Some Bashing II - Mit der Kommandozeile Abläufe automatisierenSome Bashing II - Mit der Kommandozeile Abläufe automatisieren
Some Bashing II - Mit der Kommandozeile Abläufe automatisieren
 
Entwicklungsumgebungen mit Vagrant
Entwicklungsumgebungen mit VagrantEntwicklungsumgebungen mit Vagrant
Entwicklungsumgebungen mit Vagrant
 
Docker und Virtualisierung - Container Use Cases für eine isolierte, performa...
Docker und Virtualisierung - Container Use Cases für eine isolierte, performa...Docker und Virtualisierung - Container Use Cases für eine isolierte, performa...
Docker und Virtualisierung - Container Use Cases für eine isolierte, performa...
 
Btrfs - das Dateisystem der Zukunft?
Btrfs - das Dateisystem der Zukunft?Btrfs - das Dateisystem der Zukunft?
Btrfs - das Dateisystem der Zukunft?
 
OpenStack Betrieb & Support - 5 Jahre OpenStack Managed Service bei der SAP SE
OpenStack Betrieb & Support - 5 Jahre OpenStack Managed Service bei der SAP SEOpenStack Betrieb & Support - 5 Jahre OpenStack Managed Service bei der SAP SE
OpenStack Betrieb & Support - 5 Jahre OpenStack Managed Service bei der SAP SE
 

Kürzlich hochgeladen

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Kürzlich hochgeladen (20)

Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 

GitLab as an Alternative Development Platform for Github.com

  • 1. GitLab as an Alternative Development Platform for Github.com LinuxCon Europe 2014 October 13, 2014 Ralf Lang Linux Consultant / Developer B1 Systems GmbH lang@b1-systems.de B1 Systems GmbH - Linux/Open Source Consulting, Training, Support & Development
  • 2. Introducing B1 Systems founded in 2004 operating both nationally and internationally more than 60 employees; low employee turnover Provider for IBM, SUSE, Oracle & HP vendor-independent (hardware and software) Focus: Consulting Support Development Training Operations Solutions B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 2 / 26
  • 3. Areas of Expertise Virtualization (XEN, KVM & RHEV) Systems management (Spacewalk, Red Hat Satellite, SUSE Manager) Configuration management (Puppet & Chef) Monitoring (Nagios & Icinga) IaaS Cloud (OpenStack & SUSE Cloud) High availability (Pacemaker) Shared Storage (GPFS, OCFS2, DRBD & CEPH) File Sharing (ownCloud) Packaging (Open Build Service) Providing on-site systems administration and/or development B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 3 / 26
  • 4. Partners B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 4 / 26
  • 5. GitLab – An Open Source Software to Collaborate on Code B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 5 / 26
  • 6. Why Managed Version Control? easy management of privileges inline feedback options enforce reviews spend time coding, not managing tools and users B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 6 / 26
  • 7. Why Should I run my own VCS? firm control over source code access no external parties involved dedicated resources easily integrates with custom tools and reports keep sensitive information in-house B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 7 / 26
  • 8. What is GitLab? GitLab is an Open source software to collaborate on code. GitLab is based on Git, the most widely adopted version control system for software development. GitLab helps to ensure software quality by providing a feature-rich review system. GitLab simplifies distributed working on projects with a centralized server. B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 8 / 26
  • 9. Some GitLab Features code review bug tracking personal and private branches management of numerous Git repositories 25,000 users on a single server highly available active/active cluster possible code snippets access control issue tracking Web hooks Wiki B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 9 / 26
  • 10. GitLab is Collaborative unlimited number of public and private repositories unlimited number of public and private collaborators integrates with LDAP integrates with external ticket systems e.a. Redmine Omnibus package supports configuring an external database (PostgreSQL or MySQL) works with JIRA for issue tracking displays merge request status for builds on Jenkins CI (only Enterprise Edition) B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 10 / 26
  • 11. Who Else Uses GitLab? More than 100,000 organizations, amongst others: AT&T Bell CERN Fraunhofer Interpol NASA Red Hat B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 11 / 26
  • 12. Who Works on GitLab? since September 2011 an active community with hundreds of contributors managed by GitLab.com Enterprise support by GitLab B.V. B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 12 / 26
  • 13. Traditional Git Workflow 1 Clone the repository. 2 Create a branch. 3 Modify source code. 4 Check in. 5 Create a patch or push changes to upstream. B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 13 / 26
  • 14. Disadvantages & Drawbacks Write access: Every committer needs write access on projects. ) intended workflows could be omitted Format patch: Every committer submits his patches and has to wait for the maintaining of a reviewer. ) still a labor-intensive and error-prone process B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 14 / 26
  • 15. The Gitlab Workflow 1 Fork repository into own name space. 2 Full access to own forked copy. 3 Edit online in browser or in local checkouts. 4 Create Merge Request. 5 Reviewer comments on diffs on the platform. 6 Automated process for pulling forks back into the mainstream repository. ) no need to grant or revoke access ) no hassle with long threads of patch e-mails ) enforces review paradigms ) little setup costs for additional team members B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 15 / 26
  • 16. Internal Issue/Review System APIs for external ticketing access Redmine tickets through commit messages in Git or use internal ticketing API for Gitlab CI continuous Integration: Automated builds and test suite runs on commit improved software quality use dead code detectors or code coverage tools B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 16 / 26
  • 17. Access Control GitLab provides an access control for user and groups based on permission levels. Users’ abilities depend on their access level on a particular project or group. If a user is both in a project group and in the project itself the highest permission level is used. The GitLab administrator receives all permissions. B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 17 / 26
  • 18. GitLab Continuous Integration integrates with the GitLab installation to run tests for projects login with GitLab account Simply add projects with one click on-premises software: can be installed on arbitrary (Linux) server(s) B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 18 / 26
  • 19. The GitLab Dashboard – Project Overview B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 19 / 26
  • 20. The GitLab Dashboard – Commits B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 20 / 26
  • 21. The GitLab Dashboard – Workflow B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 21 / 26
  • 22. The GitLab Dashboard – New Project B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 22 / 26
  • 23. The GitLab Dashboard – Projects B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 23 / 26
  • 24. The GitLab Dashboard – Project Files B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 24 / 26
  • 25. More Information on GitLab . . . GitLab.com: GitLab.com GitLab Continuous Integration (CI): https://about.gitlab.com/gitlab-ci/ Official GitLab Documentation: http://doc.gitlab.com/ce/ B1 Systems GmbH GitLab as an Alternative Development Platform for Github.com 25 / 26
  • 26. Thank you for your attention! For further information, please contact: info@b1-systems.de or +49 (0)8457 - 931096 B1 Systems GmbH - Linux/Open Source Consulting, Training, Support & Development