Mastering GitHub
Collaborative Development for Modern Teams 1 - 2 days
Why this course
Learn how developers actually use GitHub to collaborate, track work, and ship software.
GitHub is more than a place to store code, it’s where modern software development happens. Teams around the world rely on GitHub to collaborate, manage changes, build features, and ship products in a consistent, traceable way.
Understanding GitHub isn’t just about knowing commands; it’s about mastering workflows that support teamwork, quality control, and rapid iteration.
This course bridges the gap between theory and real-world practice, teaching you the tools and approaches that professional developers use every day.
Learning outcomes
By the end of this course, learners will be able to:
- Navigate GitHub confidently and understand its role in collaborative workflows.
- Use Git (locally and with GitHub) to manage code changes safely.
- Structure and manage repositories, branches, and pull requests.
- Apply best practices for issue tracking, code review, and release management.
- Leverage GitHub features like GitHub Actions, Projects, and Wikis to streamline team work.
Prerequisites
Learners should have:
- Basic knowledge of programming concepts (variables, functions, files).
- A computer with a terminal/command prompt and internet access.
- Familiarity with text editing (VS Code, Sublime, Atom, etc.) is helpful but not required.
12 modules
011. Introduction to Git and GitHub2 topics
- What is Git?
- Version control fundamentals
- Local vs remote repositories
- What is GitHub?
- GitHub’s role in the software ecosystem
- GitHub free vs paid plans
- GitHub interface overview
022. Git Foundations5 topics
- Installing Git and setting up user identity
- Git configuration and preferences
- Creating a new local repository
- Basic Git commands
- git init
- git status
- git add
- git commit
- Understanding the Git commit lifecycle
033. Working with Remotes on GitHub4 topics
- Creating a repository on GitHub
- Cloning a GitHub repository
- Pushing and pulling changes
- git push
- git pull
- git fetch
- Remote repository management
044. Branching and Merging5 topics
- Why branches matter
- Creating and switching branches
- git branch
- git checkout / git switch
- Merge strategies
- Resolving merge conflicts
- Best practices for branching
055. GitHub Collaboration Fundamentals4 topics
- Forks vs clones vs branches
- Working in teams
- Pull request workflows
- Creating pull requests
- Reviewing code
- Comments and feedback loops
- Merging pull requests
066. Issue Tracking and Project Management4 topics
- Creating and managing issues
- Labels, milestones, and assignment
- Using GitHub Projects
- Boards and workflows
- Automations
- Linking issues to pull requests
077. Advanced GitHub Features3 topics
- GitHub Actions
- CI/CD fundamentals
- Creating workflows
- Running tests and deployments
- GitHub Pages
- Hosting static sites
- Configuration and publishing
- Wikis and documentation
088. Code Quality and Continuous Integration4 topics
- Integrating automated tests
- Status checks
- Protected branches
- Code owners
099. Security and Permission Models4 topics
- Repository access levels
- Teams and organizations
- Secrets management
- Dependency scanning
1010. Release Management and Tags3 topics
- Creating release branches
- Using tags and versioning
- Drafting GitHub releases
1111. Real-World GitHub Workflows4 topics
- GitHub Flow
- Git Flow
- Trunk-based development
- Choosing the right workflow for your team
1212. Tips, Tricks, and Ecosystem Tools4 topics
- Using GitHub CLI
- GitHub Desktop
- Integrations (Slack, Jira, VS Code extensions)
- Common pitfalls and how to avoid them
A programme built around your team.
Share your training goals and requirements.