skip to main content
10.1145/3304221.3319784acmconferencesArticle/Chapter ViewAbstractPublication PagesiticseConference Proceedingsconference-collections
research-article

RepoBee: Developing Tool Support for Courses using Git/GitHub

Published: 02 July 2019 Publication History

Abstract

The use of version control systems within computing education is growing in popularity. However, this is challenging because such systems are not particularly well designed to support educational situations, nor are they easy to use with confidence in teaching, as specialist knowledge and experience is required. This experience paper reports the development of the open source tool RepoBee, which assists in the use of Git/GitHub in an educational context. The tool provides a straightforward interface for managing batch tasks such as repository generation and cloning for setting and gathering assignments, opening and closing of issues to communicate with students, as well as facilitating peer reviews. Parts of RepoBee are open to integration with third party tools for additional tasks, such as running unit tests or static analysis on student repositories. We also include the perspectives of both teachers and teaching assistants who have been using the tool as part of a first year course for computer scientists.

References

[1]
Miroslav Bias. 2013. Version Control System in CS1 Course: Practical Experience. In IEEE 11th International Conference on Emerging eLearning Technologies and Applications (ICETA'13) . pp. 23--28.
[2]
Curtis Clifton, Lisa C Kaczmarczyk, and Michael Mrozek. 2007. Subverting the Fundamentals Sequence: Using Version Control to Enhance Course Management. In Proceedings of the 38th ACM Technical Symposium on Computer Science Education (SIGCSE'07). ACM Press, pp. 86--90.
[3]
Joseph Feliciano, Margaret-Anne Storey, and Alexey Zagalsky. 2016. Student experiences using GitHub in software engineering courses: a case study. In Proceedings of the 38th International Conference on Software Engineering Companion (ICSE'16). 422--431.
[4]
Richard Glassey. 2018. Managing assignment feedback via issue tracking . In Proceedings of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science Education (ITiCSE 2018) . ACM Press, p. 382.
[5]
Louis Glassy. 2006. Using version control to observe student software development processes . J. of Computing Sciences in Colleges, Vol. 21, 3 (2006), pp. 99--106.
[6]
Lassi Haaranen and Teemu Lehtinen. 2015. Teaching Git on the Side. In Proceedings of the 20th Annual ACM Conference on Innovation and Technology in Computer Science Education (ITiCSE'15) . ACM Press, 87--92.
[7]
Ken T. N. Hartness. 2006. Eclipse and CVS for Group Projects . J. of Computing Sciences in Colleges, Vol. 21, 4 (2006), pp. 217--222.
[8]
Jason Heckman, Sarah and King. 2018. Developing Software Engineering Skills using Real Tools for Automated Grading. In Proceedings of the 49th ACM Technical Symposium on Computer Science Education . ACM Press, 794---799.
[9]
Ville Isomö ttö nen and Michael Cochez. 2014. Challenges and Confusions in Learning Version Control with Git . In Communications in Computer and Information Science, Zholtkevych G. (eds) Ermolayev V., Mayr H., Nikitchenko M., Spivakovsky A. (Ed.). Vol. 469. 178--193.
[10]
An Ju and Armando Fox. 2018. TEAMSCOPE: Measuring Software Engineering Processes with Teamwork Telemetry. In Proceedings of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science Education (ITiCSE'18). ACM Press, pp. 123--128.
[11]
John Kelleher. 2014. Employing git in the classroom. In World Congress on Computer Applications and Information Systems (WCCAIS'14). IEEE, pp. 1--4.
[12]
Andreas Krusche, Stephan and Seitz. 2018. ArTEMiS: An Automatic Assessment Management System for Interactive Learning. In Proceedings of the 49th ACM Technical Symposium on Computer Science Education . ACM Press, 284---289.
[13]
Joseph Lawrance, S Jung, and Charles Wiseman. 2013. Git on the cloud in the classroom. In Proceeding of the 44th ACM technical symposium on Computer science education (SIGCSE'13). pp. 639--644.
[14]
Stephen Paul Linder, David Abbott, and Michael J. Fromberger. 2006. An instructional scaffolding approach to teaching software design . J. of Computing Sciences in Colleges, Vol. 21, 6 (2006), pp. 238--250.
[15]
Ivan Milentijevic, Vladimir Ciric, and Oliver Vojinovic. 2008. Version control in project-based learning . Computers and Education, Vol. 50, 4 (2008), pp. 1331--1338.
[16]
Karen L. Reid and Gregory V. Wilson. 2005. Learning by Doing : Introducing Version Control as a Way to Manage Student Assignments. In Proceedings of the 36th ACM technical symposium on Computer Science Education (SIGCSE'05). ACM Press, pp. 272--276.
[17]
Ian Sommerville. 2015. Software Engineering 10th ed.). Addison-Wesley.
[18]
Ying Liu. 2004. CVS historical information to understand how students develop software. In International Workshop on Mining Software Repositories (MSR'04). In proceedings of the 26th International Conference on Software Engineering (ICSE'04) . ACM Press, pp. 32--36.

Cited By

View all
  • (2024)Integrating Canvas and GitLab to Enrich Learning ProcessesProceedings of the 46th International Conference on Software Engineering: Software Engineering Education and Training10.1145/3639474.3640056(180-190)Online publication date: 14-Apr-2024
  • (2021)Sanitize This! Sharing Assignments and Solutions Safely in a Single Git RepositoryProceedings of the 26th ACM Conference on Innovation and Technology in Computer Science Education V. 210.1145/3456565.3460036(613-614)Online publication date: 26-Jun-2021
  • (2020)Towards Flexible and Extensible Git-based Course Management with RepoBeeProceedings of the 2020 ACM Conference on Innovation and Technology in Computer Science Education10.1145/3341525.3393999(537-538)Online publication date: 15-Jun-2020

Index Terms

  1. RepoBee: Developing Tool Support for Courses using Git/GitHub

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    ITiCSE '19: Proceedings of the 2019 ACM Conference on Innovation and Technology in Computer Science Education
    July 2019
    583 pages
    ISBN:9781450368957
    DOI:10.1145/3304221
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 02 July 2019

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. computing education
    2. course management
    3. git/github
    4. version control systems

    Qualifiers

    • Research-article

    Conference

    ITiCSE '19
    Sponsor:

    Acceptance Rates

    Overall Acceptance Rate 552 of 1,613 submissions, 34%

    Upcoming Conference

    ITiCSE '25
    Innovation and Technology in Computer Science Education
    June 27 - July 2, 2025
    Nijmegen , Netherlands

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)12
    • Downloads (Last 6 weeks)1
    Reflects downloads up to 05 Mar 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Integrating Canvas and GitLab to Enrich Learning ProcessesProceedings of the 46th International Conference on Software Engineering: Software Engineering Education and Training10.1145/3639474.3640056(180-190)Online publication date: 14-Apr-2024
    • (2021)Sanitize This! Sharing Assignments and Solutions Safely in a Single Git RepositoryProceedings of the 26th ACM Conference on Innovation and Technology in Computer Science Education V. 210.1145/3456565.3460036(613-614)Online publication date: 26-Jun-2021
    • (2020)Towards Flexible and Extensible Git-based Course Management with RepoBeeProceedings of the 2020 ACM Conference on Innovation and Technology in Computer Science Education10.1145/3341525.3393999(537-538)Online publication date: 15-Jun-2020

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media