Type of business | Subsidiary |
---|---|
Type of site | Collaborative version control |
Available in | English |
Founded | February 8, 2008 (as Logical Awesome LLC) [1] |
Headquarters | San Francisco, California, U.S. |
Area served | Worldwide |
Founder(s) |
|
Key people |
|
Industry |
|
Revenue | $1 billion (2022) [2] |
Employees | 5,595 [3] |
Parent | Microsoft (2018–present) |
URL | github |
Registration | Optional (required for creating and joining repositories) |
Users | 100 million (as of January 2023 [update] ) |
Launched | April 10, 2008 |
Current status | Active |
Written in | |
ASN | 36459 |
GitHub ( /ˈɡɪthʌb/ ) is a proprietary developer platform that allows developers to create, store, manage, and share their code. It uses Git to provide distributed version control and Github itself provides access control, bug tracking, software feature requests, task management, continuous integration, and wikis for every project. [6] Headquartered in California, it has been a subsidiary of Microsoft since 2018. [7]
It is commonly used to host open source software development projects. [8] As of January 2023 [update] , GitHub reported having over 100 million developers [9] and more than 420 million repositories, [10] including at least 28 million public repositories. [11] It is the world's largest source code host as of June 2023 [update] . Over five billion developer contributions were made to more than 500 million open source projects in 2024. [12]
The development of the GitHub platform began on October 19, 2007. [13] [14] [15] The site was launched in April 2008 by Tom Preston-Werner, Chris Wanstrath, P. J. Hyett and Scott Chacon after it had been available for a few months as a beta release. [16] Its name was chosen as a compound of Git and hub. [17]
GitHub, Inc. was originally a flat organization with no middle managers, instead relying on self-management. [18] Employees could choose to work on projects that interested them (open allocation), but the chief executive set salaries. [19]
In 2014, the company added a layer of middle management in response to serious harassment allegations against its senior leadership. As a result of the scandal, Tom Preston-Werner resigned from his position as CEO. [20] Co-founder and Product lead, Chris Wanstrath, became CEO. Julio Avalos, then General Counsel and Administrative Officer, assumed control over GitHub's business operations and day-to-day management. [21]
GitHub was a bootstrapped start-up business, which in its first years provided enough revenue to be funded solely by its three founders and start taking on employees. [22]
In July 2012, four years after the company was founded, Andreessen Horowitz invested $100 million in venture capital [6] with a $750 million valuation. [23]
In July 2015 GitHub raised another $250 million (~$314 million in 2023) of venture capital in a series B round. The lead investor was Sequoia Capital, and other investors were Andreessen Horowitz, Thrive Capital, IVP (Institutional Venture Partners) and other venture capital funds. [24] [25] The company was then valued at approximately $2 billion. [26]
As of 2023, [update] GitHub was estimated to generate $1 billion in revenue. [2]
The GitHub service was developed by Chris Wanstrath, P. J. Hyett, Tom Preston-Werner, and Scott Chacon using Ruby on Rails, and started in February 2008. The company, GitHub, Inc., was formed in 2007 and is located in San Francisco. [27]
On February 24, 2009, GitHub announced that within the first year of being online, GitHub had accumulated over 46,000 public repositories, 17,000 of which were formed in the previous month. At that time, about 6,200 repositories had been forked at least once, and 4,600 had been merged.
That same year, the site was used by over 100,000 users, according to GitHub, [28] and had grown to host 90,000 unique public repositories, 12,000 having been forked at least once, for a total of 135,000 repositories. [29]
In 2010, GitHub was hosting 1 million repositories. [30] A year later, this number doubled. [31] ReadWriteWeb reported that GitHub had surpassed SourceForge and Google Code in total number of commits for the period of January to May 2011. [32] On January 16, 2013, GitHub passed the 3 million users mark and was then hosting more than 5 million repositories. [33] By the end of the year, the number of repositories was twice as great, reaching 10 million repositories. [34]
In 2015, GitHub opened an office in Japan, its first outside of the U.S. [35]
On February 28, 2018, GitHub fell victim to the third-largest distributed denial-of-service (DDoS) attack in history, with incoming traffic reaching a peak of about 1.35 terabits per second. [36]
On June 19, 2018, GitHub expanded its GitHub Education by offering free education bundles to all schools. [37] [38]
From 2012, Microsoft became a significant user of GitHub, using it to host open-source projects and development tools such as .NET Core, Chakra Core, MSBuild, PowerShell, PowerToys, Visual Studio Code, Windows Calculator, Windows Terminal and the bulk of its product documentation (now to be found on Microsoft Docs). [40] [41]
On June 4, 2018, Microsoft announced its intent to acquire GitHub for US$7.5 billion (~$8.96 billion in 2023). The deal closed on October 26, 2018. [42] GitHub continued to operate independently as a community, platform and business. [43] Under Microsoft, the service was led by Xamarin's Nat Friedman, reporting to Scott Guthrie, executive vice president of Microsoft Cloud and AI. Nat Friedman resigned November 3, 2021; he was replaced by Thomas Dohmke. [44]
There have been concerns from developers Kyle Simpson, JavaScript trainer and author, and Rafael Laguna, CEO at Open-Xchange over Microsoft's purchase, citing uneasiness over Microsoft's handling of previous acquisitions, such as Nokia's mobile business and Skype. [45] [46]
This acquisition was in line with Microsoft's business strategy under CEO Satya Nadella, which has seen a larger focus on cloud computing services, alongside the development of and contributions to open-source software. [7] [41] [47] Harvard Business Review argued that Microsoft was intending to acquire GitHub to get access to its user base, so it can be used as a loss leader to encourage the use of its other development products and services. [48]
Concerns over the sale bolstered interest in competitors: Bitbucket (owned by Atlassian), GitLab and SourceForge (owned by BIZX, LLC) reported that they had seen spikes in new users intending to migrate projects from GitHub to their respective services. [49] [50] [51] [52] [53]
In September 2019, GitHub acquired Semmle, a code analysis tool. [54] In February 2020, GitHub launched in India under the name GitHub India Private Limited. [55] In March 2020, GitHub announced that it was acquiring npm, a JavaScript packaging vendor, for an undisclosed sum of money. [56] The deal was closed on April 15, 2020. [57]
In early July 2020, the GitHub Archive Program was established to archive its open-source code in perpetuity. [58]
GitHub's mascot is an anthropomorphized "octocat" with five octopus-like arms. [59] [60] The character was created by graphic designer Simon Oxley as clip art to sell on iStock, [61] a website that enables designers to market royalty-free digital images. The illustration GitHub chose was a character that Oxley had named Octopuss. [61] Since GitHub wanted Octopuss for their logo (a use that the iStock license disallows), they negotiated with Oxley to buy exclusive rights to the image. [61]
GitHub renamed Octopuss to Octocat, [61] and trademarked the character along with the new name. [59] Later, GitHub hired illustrator Cameron McEfee to adapt Octocat for different purposes on the website and promotional materials; McEfee and various GitHub users have since created hundreds of variations of the character, which are available on The Octodex. [62] [63]
Projects on GitHub can be accessed and managed using the standard Git command-line interface; all standard Git commands work with it. GitHub also allows users to browse public repositories on the site. Multiple desktop clients and Git plugins are also available. In addition, the site provides social networking-like functions such as feeds, followers, wikis (using wiki software called Gollum), and a social network graph to display how developers work on their versions ("forks") of a repository and what fork (and branch within that fork) is newest.
Anyone can browse and download public repositories, but only registered users can contribute content to repositories. With a registered user account, users can have discussions, manage repositories, submit contributions to others' repositories, and review changes to code. GitHub began offering limited private repositories at no cost in January 2019 (limited to three contributors per project). Previously, only public repositories were free. [64] [65] [66] On April 14, 2020, GitHub made "all of the core GitHub features" free for everyone, including "private repositories with unlimited collaborators." [67]
The fundamental software that underpins GitHub is Git itself, written by Linus Torvalds, creator of Linux. The additional software that provides the GitHub user interface was written using Ruby on Rails and Erlang by GitHub, Inc. developers Wanstrath, [68] Hyett, and Preston-Werner.
The primary purpose of GitHub is to facilitate the version control and issue tracking aspects of software development. Labels, milestones, responsibility assignment, and a search engine are available for issue tracking. For version control, Git (and, by extension, GitHub) allows pull requests to propose changes to the source code. Users who can review the proposed changes can see a diff between the requested changes and approve them. In Git terminology, this action is called "committing" and one instance of it is a "commit." A history of all commits is kept and can be viewed at a later time.
In addition, GitHub supports the following formats and features:
GitHub's Terms of Service do not require public software projects hosted on GitHub to meet the Open Source Definition. The terms of service state, "By setting your repositories to be viewed publicly, you agree to allow others to view and fork your repositories." [83]
GitHub Enterprise is a self-managed version of GitHub with similar functionality. It can be run on an organization's hardware or a cloud provider and has been available as of November 2011 [update] . [84] In November 2020, source code for GitHub Enterprise Server was leaked online in an apparent protest against DMCA takedown of youtube-dl. According to GitHub, the source code came from GitHub accidentally sharing the code with Enterprise customers themselves, not from an attack on GitHub servers. [85] [86]
In 2008, GitHub introduced GitHub Pages, a static web hosting service for blogs, project documentation, [87] [88] and books. [89] All GitHub Pages content is stored in a Git repository as files served to visitors verbatim or in Markdown format. GitHub is integrated with Jekyll static website and blog generator and GitHub continuous integration pipelines. Each time the content source is updated, Jekyll regenerates the website and automatically serves it via GitHub Pages infrastructure. [90]
Like the rest of GitHub, it includes free and paid service tiers. Websites generated through this service are hosted either as subdomains of the github.io domain or can be connected to custom domains bought through a third-party domain name registrar. [91] GitHub Pages supports HTTPS encryption. [92] [93]
GitHub also operates a pastebin-style site called Gist, which is for code snippets, as opposed to GitHub proper, which is usually used for larger projects. [16] Tom Preston-Werner débuted the feature at a Ruby conference in 2008. [94]
Gist builds on the traditional simple concept of a pastebin by adding version control for code snippets, easy forking, and TLS encryption for private pastes. Because each "gist" is its own Git repository, multiple code snippets can be contained in a single page, and they can be pushed and pulled using Git. [95]
Unregistered users could upload Gists until March 19, 2018, when uploading Gists was restricted to logged-in users, reportedly to mitigate spamming on the page of recent Gists. [96]
Gists' URLs use hexadecimal IDs, and edits to Gists are recorded in a revision history, which can show the text difference of thirty revisions per page with an option between a "split" and "unified" view. Like repositories, Gists can be forked, "starred", i.e., publicly bookmarked, and commented on. The count of revisions, stars, and forks is indicated on the gist page. [97]
GitHub launched a new program called the GitHub Student Developer Pack to give students free access to more than a dozen popular development tools and services. GitHub partnered with Bitnami, Crowdflower, DigitalOcean, DNSimple, HackHands, Namecheap, Orchestrate, Screenhero, SendGrid, Stripe, Travis CI, and Unreal Engine to launch the program. [98]
In 2016, GitHub announced the launch of the GitHub Campus Experts program [99] to train and encourage students to grow technology communities at their universities. The Campus Experts program is open to university students 18 years and older worldwide. [100] GitHub Campus Experts are one of the primary ways that GitHub funds student-oriented events and communities, Campus Experts are given access to training, funding, and additional resources to run events and grow their communities. To become a Campus Expert, applicants must complete an online training course with multiple modules to develop community leadership skills.
GitHub also provides some software as a service (SaaS) integrations for adding extra features to projects. Those services include:
GitHub Sponsors allows users to make monthly money donations to projects hosted on GitHub. [104] The public beta was announced on May 23, 2019, and the project accepts waitlist registrations. The Verge said that GitHub Sponsors "works exactly like Patreon" because "developers can offer various funding tiers that come with different perks, and they'll receive recurring payments from supporters who want to access them and encourage their work" except with "zero fees to use the program." Furthermore, GitHub offers incentives for early adopters during the first year: it pledges to cover payment processing costs and match sponsorship payments up to $5,000 per developer. Furthermore, users can still use similar services like Patreon and Open Collective and link to their websites. [105] [106]
In July 2020, GitHub stored a February archive of the site [58] in an abandoned mountain mine in Svalbard, Norway, part of the Arctic World Archive and not far from the Svalbard Global Seed Vault. The archive contained the code of all active public repositories, as well as that of dormant but significant public repositories. The 21TB of data was stored on piqlFilm archival film reels as matrix (2D) barcode (Boxing barcode), and is expected to last 500–1,000 years. [107] [108] [109] [110]
The GitHub Archive Program is also working with partners on Project Silica, in an attempt to store all public repositories for 10,000 years. It aims to write archives into the molecular structure of quartz glass platters, using a high-precision petahertz pulse laser, i.e. one that pulses a quadrillion (1,000,000,000,000,000) times per second. [110]
This article's "criticism" or "controversy" section may compromise the article's neutrality .(April 2021) |
In March 2014, GitHub programmer Julie Ann Horvath alleged that founder and CEO Tom Preston-Werner and his wife, Theresa, engaged in a pattern of harassment against her that led to her leaving the company. [111] In April 2014, GitHub released a statement denying Horvath's allegations. [112] [113] [114] However, following an internal investigation, GitHub confirmed the claims. GitHub's CEO Chris Wanstrath wrote on the company blog, "The investigation found Tom Preston-Werner in his capacity as GitHub's CEO acted inappropriately, including confrontational conduct, disregard of workplace complaints, insensitivity to the impact of his spouse's presence in the workplace, and failure to enforce an agreement that his spouse should not work in the office." [115] Preston-Werner subsequently resigned from the company. [116] The firm then announced it would implement new initiatives and trainings "to make sure employee concerns and conflicts are taken seriously and dealt with appropriately." [116]
On July 25, 2019, a developer based in Iran wrote on Medium that GitHub had blocked his private repositories and prohibited access to GitHub pages. [117] Soon after, GitHub confirmed that it was now blocking developers in Iran, Crimea, Cuba, North Korea, and Syria from accessing private repositories. [118] However, GitHub reopened access to GitHub Pages days later, for public repositories regardless of location. It was also revealed that using GitHub while visiting sanctioned countries could result in similar actions occurring on a user's account. GitHub responded to complaints and the media through a spokesperson, saying:
GitHub is subject to US trade control laws, and is committed to full compliance with applicable law. At the same time, GitHub's vision is to be the global platform for developer collaboration, no matter where developers reside. As a result, we take seriously our responsibility to examine government mandates thoroughly to be certain that users and customers are not impacted beyond what is required by law. This includes keeping public repositories services, including those for open source projects, available and accessible to support personal communications involving developers in sanctioned regions. [119] [120]
Developers who feel that they should not have restrictions can appeal for the removal of said restrictions, including those who only travel to, and do not reside in, those countries. GitHub has forbidden the use of VPNs and IP proxies to access the site from sanctioned countries, as purchase history and IP addresses are how they flag users, among other sources. [121]
On December 4, 2014, Russia blacklisted GitHub.com because GitHub initially refused to take down user-posted suicide manuals. [122] After a day, Russia withdrew its block, [123] and GitHub began blocking specific content and pages in Russia. [124] On December 31, 2014, India blocked GitHub.com along with 31 other websites over pro-ISIS content posted by users; [125] the block was lifted three days later. [126] On October 8, 2016, Turkey blocked GitHub to prevent email leakage of a hacked account belonging to the country's energy minister. [127]
On March 26, 2015, a large-scale DDoS attack was launched against GitHub.com that lasted for just under five days. [128] The attack, which appeared to originate from China, primarily targeted GitHub-hosted user content describing methods of circumventing Internet censorship. [129] [130] [131]
On April 19, 2020, Chinese police detained Chen Mei and Cai Wei (volunteers for Terminus 2049, a project hosted on GitHub), and accused them of "picking quarrels and provoking trouble." Cai and Chen archived news articles, interviews, and other materials published on Chinese media outlets and social media platforms that have been removed by censors in China. [132]
GitHub has a $200,000 contract with U.S. Immigration and Customs Enforcement (ICE) for the use of their on-site product GitHub Enterprise Server. This contract was renewed in 2019, despite internal opposition from many GitHub employees. In an email sent to employees, later posted to the GitHub blog on October 9, 2019, CEO Nat Friedman stated, "The revenue from the purchase is less than $200,000 and not financially material for our company." He announced that GitHub had pledged to donate $500,000 to "nonprofit groups supporting immigrant communities targeted by the current administration." [133] In response, at least 150 GitHub employees signed an open letter re-stating their opposition to the contract, and denouncing alleged human rights abuses by ICE. As of November 13, 2019, five workers had resigned over the contract. [134] [135] [136]
The ICE contract dispute came into focus again in June 2020 due to the company's decision to abandon "master/slave" branch terminology, spurred by the George Floyd protests and Black Lives Matter movement. [137] Detractors of GitHub describe the branch renaming to be a form of performative activism and have urged GitHub to cancel their ICE contract instead. [138] An open letter from members of the open source community was shared on GitHub in December 2019, demanding that the company drop its contract with ICE and provide more transparency into how they conduct business and partnerships. The letter has been signed by more than 700 people. [139]
In January 2021, GitHub fired one of its employees after he expressed concern for colleagues following the January 6 United States Capitol attack, calling some of the rioters "Nazis". [140] After an investigation, GitHub's COO said there were "significant errors of judgment and procedure" with the company's decision to fire the employee. As a result of the investigation, GitHub reached out to the employee, and the company's head of human resources resigned. [141] [142]
In 2023, parts of the social media platform Twitter were uploaded onto GitHub. The leak was first reported by the New York Times and was part of a legal filing Twitter submitted to the United States District Court for the Northern District of California. Twitter claimed that the postings infringed on copyright property owned by them, and asked the court for information to identify the user who posted the source code to GitHub, under the username "FreeSpeechEnthusiast". [143]
Linus Torvalds, the original developer of the Git software, has highly praised GitHub by stating "The hosting of github[ sic ] is excellent. They've done a good job on that. I think GitHub should be commended enormously for making open source project hosting so easy." However, he also sharply criticized the implementation of GitHub's merging interface, stating that "Git comes with a nice pull-request generation module, but GitHub instead decided to replace it with their own totally inferior version. As a result, I consider GitHub useless for these kinds of things. It's fine for hosting, but the pull requests and the online commit editing, are just pure garbage." [144] [145]
Git is a distributed version control system that tracks versions of files. It is often used to control source code by programmers who are developing software collaboratively.
A source-code-hosting facility is a file archive and web hosting facility for source code of software, documentation, web pages, and other works, accessible either publicly or privately. They are often used by open-source software projects and other multi-developer projects to maintain revision and version history, or version control. Many repositories provide a bug tracking system, and offer release management, mailing lists, and wiki-based project documentation. Software authors generally retain their copyright when software is posted to a code hosting facilities.
Open Hub or Black Duck Open Hub is a website which provides a web services suite and online community platform that aims to index the open-source software development community. It was founded by former Microsoft managers Jason Allen and Scott Collison in 2004 and joined by the developer Robin Luckey. As of 15 January 2016, the site lists 669,601 open-source projects, 681,345 source control repositories, 3,848,524 contributors and 31,688,426,179 lines of code.
StyleCop is an open-source static code analysis tool from Microsoft that checks C# code for conformance to StyleCop's recommended coding styles and a subset of Microsoft's .NET Framework Design Guidelines. StyleCop analyses the source code, allowing it to enforce a different set of rules from FxCop. The rules are classified into the following categories:
Etherpad is an open-source, web-based collaborative real-time editor, allowing authors to simultaneously edit a text document, and see all of the participants' edits in real-time, with the ability to display each author's text in their own color. There is also a chat box in the sidebar to allow meta communication.
npm is a package manager for the JavaScript programming language maintained by npm, Inc., a subsidiary of GitHub. npm is the default package manager for the JavaScript runtime environment Node.js and is included as a recommended feature in the Node.js installer.
Thomas Preston-Werner is an American billionaire software developer and entrepreneur. He is an active contributor within the free and open-source software community, most prominently in the San Francisco Bay Area, where he lives.
Docker is a set of platform as a service (PaaS) products that use OS-level virtualization to deliver software in packages called containers. The service has both free and premium tiers. The software that hosts the containers is called Docker Engine. It was first released in 2013 and is developed by Docker, Inc.
Atom is a free and open-source text and source-code editor for macOS, Linux, and Windows with support for plug-ins written in JavaScript, and embedded Git control. Developed by GitHub, Atom was released on June 25, 2015.
GitLab Inc. is a company that operates and develops GitLab, a open-core DevOps software package that can develop, secure, and operate software. GitLab includes a distributed version control system based on Git, including features such as access control, bug tracking, software feature requests, task management, and wikis for every project, as well as snippets.
GitHub has been the target of censorship from governments using methods ranging from local Internet service provider blocks, intermediary blocking using methods such as DNS hijacking and man-in-the-middle attacks, and denial-of-service attacks on GitHub's servers from countries including China, India, Iraq, Russia, and Turkey. In all of these cases, GitHub has been eventually unblocked after backlash from users and technology businesses or compliance from GitHub.
Visual Studio Code, commonly referred to as VS Code, is an integrated development environment developed by Microsoft for Windows, Linux, macOS and web browsers. Features include support for debugging, syntax highlighting, intelligent code completion, snippets, code refactoring, and embedded version control with Git. Users can change the theme, keyboard shortcuts, preferences, and install extensions that add functionality.
WebAssembly (Wasm) defines a portable binary-code format and a corresponding text format for executable programs as well as software interfaces for facilitating communication between such programs and their host environment.
Coraline Ada Ehmke is an American software developer, open source advocate, and Founder and Executive Director of the Organization for Ethical Source, based in Chicago, Illinois. She began her career as a web developer in 1994 and has worked in a variety of industries, including engineering, consulting, education, advertising, healthcare, and software development infrastructure. She is known for her work in Ruby, and in 2016 earned the Ruby Hero award at RailsConf, a conference for Ruby on Rails developers. She is also known for her social justice work and activism, writing the Contributor Covenant and Post-Meritocracy Manifesto, and promoting the widespread adoption of codes of conduct for open source projects and communities.
This is a timeline of GitHub, a web-based Git or version control repository and Internet hosting service.
Mattermost is an open-source, self-hostable online chat service with file sharing, search, and third party application integrations. It is designed as an internal chat for organisations and companies, and mostly markets itself as an open-source alternative to Slack and Microsoft Teams.
Microsoft, a tech company historically known for its opposition to the open source software paradigm, turned to embrace the approach in the 2010s. From the 1970s through 2000s under CEOs Bill Gates and Steve Ballmer, Microsoft viewed the community creation and sharing of communal code, later to be known as free and open source software, as a threat to its business, and both executives spoke negatively against it. In the 2010s, as the industry turned towards cloud, embedded, and mobile computing—technologies powered by open source advances—CEO Satya Nadella led Microsoft towards open source adoption although Microsoft's traditional Windows business continued to grow throughout this period generating revenues of 26.8 billion in the third quarter of 2018, while Microsoft's Azure cloud revenues nearly doubled.
GitHub Copilot is a code completion and automatic programming tool developed by GitHub and OpenAI that assists users of Visual Studio Code, Visual Studio, Neovim, and JetBrains integrated development environments (IDEs) by autocompleting code. Currently available by subscription to individual developers and to businesses, the generative artificial intelligence software was first announced by GitHub on 29 June 2021, and works best for users coding in Python, JavaScript, TypeScript, Ruby, and Go. In March 2023 GitHub announced plans for "Copilot X", which will incorporate a chatbot based on GPT-4, as well as support for voice commands, into Copilot.
Conversations is a free software, instant messaging client application software for Android. It is largely based on recognized open standards such as the Extensible Messaging and Presence Protocol (XMPP) and Transport Layer Security (TLS).
Microsoft recognizes 8 trade unions representing 2,000 workers in the United States at its video game subsidiaries Activision Blizzard and ZeniMax Media. US workers have been vocal in opposing military and law-enforcement contracts with Microsoft. Bethesda Game Studios is unionized in Canada. Microsoft South Korea recognizes its union since 2017. German employees have elected works councils since 1998.
Andreessen Horowitz is investing an eye-popping $100 million into GitHub
Showing 28,177,992 available repository results
in 2007 they began working on GitHub as a side project
GitHub hosts about 10,000 projects and officially launched in April of this year after a beta period of a few months.
During the period Black Duck examined, Github had 1,153,059 commits, Sourceforge had 624,989, Google Code and 287,901 and CodePlex had 49,839.
{{cite news}}
: CS1 maint: unfit URL (link)He previewed the upcoming git feature gist