Master collaborative development with Git and GitHub
Learn how professional development teams use Git and GitHub to collaborate effectively on projects. This workshop covers everything from GitHub Issues for task management to pull requests and code reviews.
By the end of this workshop, you will be able to:
- ✅ Create and manage GitHub Issues for task tracking
- ✅ Use a branch-based workflow for feature development
- ✅ Create meaningful pull requests with proper descriptions
- ✅ Review code and provide constructive feedback
- ✅ Handle merge conflicts confidently
- ✅ Apply best practices for team collaboration
- Basic Git commands:
init,add,commit,push,pull - Basic command line navigation
- Understanding of what version control is
- Git installed (version 2.x or higher)
- GitHub account (free tier)
- Text editor (VS Code recommended)
- Terminal/command line access
Run these commands to verify:
# Check Git version
git --version
# Check Git configuration
git config --global user.name
git config --global user.emailIf any of these fail, follow the setup guide in the series README.
- Workshop Content - Complete teaching material with examples
- Hands-On Lab - Practical exercises with solutions
- Instructor Notes - Teaching tips and guidance
- Lab Setup Script - Automated environment setup
- Demo Script - Live demonstration script
-
Read the workshop content:
cd series/collab-dev/w1-git-github-team-workflow cat materials/workshop-1-content.md -
Try the examples as you read
-
Complete the hands-on lab:
cat exercises/hands-on-lab.md
-
Run the lab setup:
cd series/collab-dev/w1-git-github-team-workflow/scripts ./lab-setup.sh -
Jump straight to exercises:
cat ../exercises/hands-on-lab.md
-
Refer to content when needed
- Understanding issue-driven development
- Creating effective issues
- Labels, milestones, and assignments
- Issue templates and best practices
- Why branch-based development?
- Creating and switching branches
- Naming conventions
- Feature branches and main branch protection
- Creating meaningful pull requests
- PR descriptions and templates
- Code review process
- Merging strategies
- Understanding merge conflicts
- Resolving conflicts step-by-step
- Tools for conflict resolution
- Preventing conflicts
- Communication guidelines
- Commit message conventions
- When to create PRs vs direct commits
- Team workflow examples
The workshop includes several practical exercises:
- Issue Management Exercise - Create and organize issues for a project
- Feature Development Exercise - Build a feature using branch workflow
- Pull Request Exercise - Submit and review pull requests
- Conflict Resolution Exercise - Resolve merge conflicts in a safe environment
- Team Simulation - Work through a realistic team scenario
Each exercise includes:
- Clear objectives
- Step-by-step instructions
- Expected outcomes
- Solution hints
Recording will be available after the live workshop session
- GitHub Flow Guide
- Atlassian Git Tutorials
- Oh Shit, Git!?! - Common Git mistakes and fixes
- GitHub Desktop
- GitKraken
- GitHub CLI
- VS Code extensions: GitLens, GitHub Pull Requests
Git not found:
# Install on macOS
brew install git
# Install on Ubuntu/Debian
sudo apt-get install gitSSH authentication issues:
# Generate new SSH key
ssh-keygen -t ed25519 -C "your_email@example.com"
# Add to ssh-agent
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519
# Copy public key and add to GitHub
cat ~/.ssh/id_ed25519.pubPermission denied on lab setup:
chmod +x scripts/lab-setup.sh
chmod +x scripts/demo-script.sh- During the workshop: Raise your hand or use chat
- After the workshop: Open an issue in this repository
- General questions: Check the Discussions
Found a typo or want to improve the content? Check our Contributing Guide!
Your feedback helps us improve! After completing the workshop:
- Let us know what worked well
- Share what was confusing
- Suggest improvements
Ready to become a collaborative development pro?
Start with the Workshop Content
Previous: Series Overview | Next: Workshop Content