Duration
4 days
OVERVIEW
GitLab is a web-based tool designed to help developers collaborate more effectively throughout each phase of the software development life cycle.
In this course, you will learn how to set up a GitLab project, edit files, and leverage key features to collaborate more effectively with your teammates.
OBJECTIVES
- Learn how to use the basic GitLab editor to make changes to a file
- Create branch and merge requests, and interpret the Git commit history.
- Find out more about using key collaboration features, such as Todos and issues, a built-in ticketing system for tracking work on your projects.
- Sharing your work easily with co-workers & customers
- How to fit GitLab into your team's workflow
- Use cloud-based and free online software GitLab
- Know about the flexibility of being operating system independent
- Be able to work remotely on a large development project
METHODOLOGY
This is a hands-on course on the fundamentals to intermediate uses of GitLab for developers and administrators. No prior experience required. However an e-mail address will be required and a free subscription to GitLab will be done during the training. This course will consist of:
- Training
- Workshops
- Use cases & projects
DAY 1
- WHAT IS GIT?
- Git Defined
- A Version Control System
- GIt Command & Structure
- Register As Git User
- Example Output Of Git Config
- Git Project
- Example Of Git Status Comand Output
- Get Git Help
- WHAT IS GITLAB?
- Gitlab Defined
- Gitlab Technologies
- So, What Is Devops?
- Gitlab Vs Github
- Gitlab (And Github) Location
- GITLAB WORKLOW
- Gitlab Workflow Diagram
- Gitlab Workflow & Development Stages
- Review | Git And Gitlab
- Installing Git
- WHAT IS SSH KEY
- Connecting With SSH
- WORKSHOP | INSTALL GIT
- WORKSHOP | CREATING AN ACCOUNT ON GITLAB
- WORKSHOP | CREATING OUR FIRST PROJECT AND GROUP
DAY 2
- QUICK REVIEW OF GITLAB
- GITLAB STRUCTURE
- Gitlab Structure Breakdown
- Defining The Work
- Planning The Work
- Setup Ssh Key In Gitlab
- GITLAB STRUCTURE BREAKDOWN
- Defining The Work
- Planning The Work
- Doing The Work
- WORKSHOP | CREATING A BLANK PROJECT ON GITLAB CLONE ON YOUR COMPUTER
- WORKSHOP | CREATING A CLONE OF YOUR PROJECT
- WORKSHOP | GITLAB CODE BASE AND COMMIT
- WORKSHOP | CREATING OUR FIRST PROJECT AND GROUP
DAY 3
- CHECKING HISTORY
- Log Files
- Updating & Comparison
- FORK & BRANCH & CLONE
- What Is The Difference Between Fork And Branch
- Fork Method
- Branch Method
- Cloning GtiLab to Git
- WORKSHOP | GITLAB CODE BASE AND COMMIT
- WORKSHOP | MAKING A FORK & BRANCH
- WORKSHOP | GIT TO GITLAB CLONING
DAY 4
- CONTINUOUS INTEGRATION & WORKSHOP
- Creating a Pipeline
- Running your Pipeline
- Going Deeper with Pipelines
- Adding a test
- Generate a website
- CONTINUOUS DELIVERY & WORKSHOP
- CD concepts
- Environments
- Environment variables
- First deployment pipeline
- Automating deployments
- Complete CD pipeline
- Releasing to production
USE CASES AND PROJECTS
- Use cases - Mastering Code Review With GitLab.
- Use cases - GitLab Workflow in depth
- Use cases - Code hosting in repositories with version control
- Use cases - Code review in Merge Requests with live-preview changes per branch with Review Apps
- Use cases - Improve collaboration with Merge Request Approvals, Multiple Assignees for Issues, and Multiple Issue Boards
- Use cases - View your entire CI/CD pipeline involving more than one project with Multiple-Project Pipeline Graphs
- Use cases - Lock files to prevent conflicts
- Projects - Repositories: Host your codebase in repositories with version control and as part of a fully integrated platform.
- Projects - Issues: Explore the best of GitLab Issues' features.
- Projects - Merge Requests: Collaborate on code, reviews, live preview changes per branch, and request approvals with Merge Requests.
- Projects - Milestones: Work on multiple issues and merge requests towards the same target date with Milestones
WHO SHOULD ATTEND THIS COURSE
- If you want to work together on a project development with artefacts split over a large group of developers.
- If you are a developer or administrator who need a good svn and global tracking of your work.
Programme scope, delivery arrangements and suitability are confirmed during enquiry.