This course is designed to cover the essentials of version control using Git and the usage and administration of GitLab within a 3-month timeframe. The schedule is flexible and can be adjusted based on the pace of learning and the specific needs of the participants. The course emphasizes hands-on exercises and practical application.

Pre-requisite: Diploma Program in Java, Diploma in Web Development, Diploma in Python

 

Month 1: Introduction to Version Control and Git Basics

Week 1-2: Understanding Version Control

  • Basics of version control and its importance
  • Introduction to distributed version control systems
  • Overview of Git and its key concepts

Week 3-4: Git Fundamentals

  • Setting up a Git repository
  • Basic Git commands: commit, push, pull, merge
  • Branching and merging strategies

Month 2: Advanced Git and Collaboration Workflows

Week 5-6: Advanced Git Commands

  • Rebase and interactive rebase
  • Git hooks and custom scripts
  • Handling merge conflicts

Week 7-8: Collaboration with Git

  • Working with remote repositories
  • Forking and pull requests
  • Code reviews and collaboration best practices

Month 3: GitLab Usage and Administration

Week 9-10: Introduction to GitLab

  • Overview of GitLab features and capabilities
  • Setting up a project in GitLab
  • Integrating GitLab with Git

Week 11-12: GitLab Administration and Advanced Features

  • User and group management in GitLab
  • CI/CD pipelines in GitLab
  • Implementing GitLab CI/CD for automated testing and deployment

Final Project:

  • Implementation of GitLab in a real-world scenario
  • Setting up CI/CD pipelines for a project
  • Presentation and review of the final project

Additional Topics Throughout the Course:

  • GitLab security features and access controls
  • Monitoring and troubleshooting GitLab instances
  • Integrating GitLab with other development tools