GitHub (for code and design)
Introduction
GitHub is a forge (software) (collaborative development platform) for hosting projects using the Git version control system. It is mainly used for creating source code for computer programs. The software that operates GitHub was written in Ruby on Rails. Since January 2010, GitHub operates under the name GitHub, Inc. Previously known as Logical Awesome LLC. The code for projects hosted on GitHub is generally stored publicly.
On June 4, 2018, Microsoft purchased GitHub for $7.5 billion.[1][2] Initially, the change in ownership generated concerns and the departure of some projects from this site;[3] however, they were not representative. GitHub continues to be the largest collaboration platform for open source projects.
Characteristics
Repositories
Repositories are, as their name suggests, virtual places hosted in the cloud where users can store any type of file. They are usually used to save text files that represent code in different programming languages, which in turn make up a program or application. This is the main service that GitHub offers: repositories where users can store the code of their applications, either publicly, privately, or through an organization.[13].
To be identified, repositories display relevant information, such as the project description, the programming languages used or search tags. A very important aspect of the repository information is the "README" file, which developers can create (either in Markdown format or in plain text format) to describe their project in depth.[14] Typically, this type of file usually contains a description, screenshots of the program, installation instructions, and the license statement.[15][16].
In the settings tab, developers can change general aspects of the repository, as well as more advanced aspects. More advanced aspects include access to the repository (adding collaborators and determining who can interact with it),[17] automation of and thanks to the repository (branches and their rules,[18] GitHub Actions,[19] webhooks,[20] environments and GitHub Pages),[21] repository security (security and code analysis through bot alerts and actions,[22] deployment keys[23] and encrypted secrets)[24] and, finally, integrations, which include the use of applications installed on GitHub and email notifications[25].