Duration
Github
1 day
Session 1: Introduction to Version Control
- The role of version control in software development.
- Benefits of using Git for version control.
- Overview of distributed version control systems.
Session 2: Git Fundamentals
- Setting up Git on your local machine.
- Configuring Git settings.
- Initialising a Git repository.
Session 3: Git Basics
- Staging changes and creating commits.
- Viewing commit history and differences.
- Undoing changes with Git.
Session 4: Working with Branches
- Understanding branches in Git.
- Creating and switching between branches.
- Merging branches and resolving conflicts.
Session 5: Collaborative Workflows
- Cloning remote repositories.
- Pushing and pulling changes.
- Collaborating with others on Git projects.
Session 6: Git Tags and Releases
- Tagging commits for version releases.
- Managing and listing tags in Git.
Session 7: Git Best Practices
- Commit message conventions and readability.
- Branch naming conventions.
- Keeping repositories clean and organised.
Session 8: Resolving Merge Conflicts
- Understanding merge conflicts.
- Strategies for resolving conflicts.
- Manual conflict resolution.
Session 9: Git Hooks (Brief Overview)
- Introduction to Git hooks.
- Pre-commit and post-commit hooks.
Session 10: Practical Git Exercises
- Hands-on coding exercises to reinforce Git concepts.
- Collaborative workflows, branching, merging, and conflict resolution.
Session 11: Git and CI/CD (Brief Overview)
- Git's role in Continuous Integration and Continuous Deployment.
- Integrating Git with CI/CD pipelines.
GITHUB
Session 1: Introduction to GitHub
- Overview of GitHub and its role in software development.
- Benefits of using GitHub for version control and collaboration.
- Setting up a GitHub account.
Session 2: Navigating GitHub
- Tour of the GitHub dashboard and user interface.
- Exploring repositories, profiles, and organisations.
- Understanding GitHub's terminology (fork, clone, commit, pull request).
Session 3: Creating and Managing Repositories
- Creating a new GitHub repository.
- Configuring repository settings and options.
- Adding collaborators and permissions.
Session 4: Git and GitHub Integration
- Linking local Git repositories to GitHub.
- Pushing code to GitHub.
- Viewing commit history and differences on GitHub.
Session 5: Branching and Pull Requests
- Working with branches in GitHub.
- Creating and managing pull requests (PRs).
- Reviewing and merging PRs.
Session 6: Code Review and Collaboration
- Using GitHub's code review tools.
- Commenting on code and providing feedback.
- Collaborative workflows in GitHub.
Session 7: Releases and Versioning
- Creating and managing releases on GitHub.
- Publishing releases and changelogs.
- Using GitHub Actions for automated releases.
Session 8: GitHub Automation with Actions
- Introduction to GitHub Actions.
- Creating custom workflows with Actions.
- Automating repetitive tasks (e.g., testing, deployment).
Session 9: Issue Tracking and Projects
- Creating and managing issues and projects.
- Using labels, milestones, and project boards.
- Agile project management with GitHub.
Session 10: GitHub Security and Best Practices
- Security features in GitHub.
- Implementing code scanning and vulnerability alerts.
- Best practices for repository organization and documentation.
Session 11: Integrations and Ecosystem
- Third-party integrations and tools that enhance GitHub.
- GitHub Apps and GitHub Marketplace.
- Extending GitHub's functionality.
Session 12: GitHub Enterprise (Brief Overview)
- Introduction to GitHub Enterprise for on-premises solutions.
- Deployment and management considerations.
Programme scope, delivery arrangements and suitability are confirmed during enquiry.