GitHub is an Internet hosting service for software development and version control using Git.
It provides the distributed version control of Git plus access control, bug tracking, software feature requests, task management, continuous integration, and wikis for every project. It is commonly used to host open source software development projects.
GitHub offers free and paid products for storing and collaborating on code. Some products apply only to personal accounts, while other plans apply only to organization and enterprise accounts.
CONTROL VERSION SYSTEM
With GitHub it is possible to manage and organize the sessions as well as the students’ activities on a dashboard, automatically grade and help students when they get stuck.
Through the protocol used by git, it is possible to visualize the progress of students, individual contributions, as well as provide comments and feedback at a very specific level of detail.
It is also possible to revert changes to recover stable points of software development, create new proposals in different scenarios and make revertible changes on them.
This kind of tool can be effectively used in educational contexts for many purposes:
- Control code versions of software development exercises.
- Provide a collaborative workspace for software development.
- Automate tests for the scoring of activities performed by students.
- Obtaining immediate feedback for students by preparing tests.
- Interact with students to request changes or modifications in the different versions.
- Provide part of the code in the activities for students to continue developing software.
- Allow learners to revert changes and come back at stable points.
- Provide incremental feedback as software development progresses.
It can be used for summative assessment or for formative assessment. Students can develop software both individually and in groups. When they are done in groups, they can contribute to develop the software.
The teacher can review the code, the interactions with the tool, and give feedback to the students.
Use cases/examples of usage: (tutorial)
Strenght: It can be considered an industry-standard tool developers use.
Weakness: It is a very powerful tool with many different options and ways of doing tasks, it can be confusing and overwhelming, and so is hard to get the hang as a beginner.
People opinion about the tool: https://www.capterra.com/p/129067/GitHub/reviews/
Similar Tool: TaraVault; Bitbucket; SourceForge; Gogs; Gitbucket; AWS CodeCommit.
Technical and operational requirements:
- Device with web browser and Internet connection for the online version.
- For the on-premises version:
- The following operating systems are supported for GitHub Desktop.
- MacOS 10.12 or later
- Windows 7 64-bit or later. You must have a 64-bit operating system to run GitHub Desktop.