This structured review examines how GitHub is used in software engineering and programming education and what comparisons can be made with related classroom workflows and platforms. The review used source-by-source searching, staged screening, common extraction fields, source-role weighting, light appraisal, and narrative thematic synthesis. Searches were updated in March 2026 across major academic databases, ERIC, CEUR Workshop Proceedings, GALA, and openly accessible institutional or author-posted sources. Preliminary screening identified 127 candidate records. After staged screening, 58 accessible full texts were assessed, and 44 sources were retained: 38 substantive review sources and 6 method-guidance sources. The literature shows that GitHub is commonly used for assignment delivery, team projects, code review, feedback, autograding, and portfolio development, often supporting both individual learning and teamwork in realistic development environments. Reported benefits include better process visibility, clearer feedback placement, enhanced support for collaboration, and stronger workflow learning that integrates social coding, traceable contributions, and structured peer interaction. Common difficulties include the Git learning curve, setup burden, uneven student readiness, and the weak use of activity counts as direct evidence of learning. Comparative conclusions are clearest against basic file-submission workflows, emphasizing GitHub’s role in organizing course materials and feedback, and more cautious for GitLab and Bitbucket because direct classroom comparisons remain limited and context-dependent. Overall, GitHub appears most useful when it is introduced with clear guidance, aligned with course objectives, and supported with guidance for onboarding, workflow management, and assessment interpretation. This review contributes to educational technology research by synthesizing multi-source evidence, clarifying both the pedagogical potential and adoption constraints of repository-supported learning, and providing instructors with a detailed understanding of how platform features, classroom practices, and learning outcomes intersect in software engineering education.
Reymond Dalupang (Thu,) studied this question.