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