Welcome to the Creatures Wiki! Log in and join the community.

Difference between revisions of "GitHub"

From Creatures Wiki
Jump to navigation Jump to search
m (→‎GitHub Marketplace service: not relevant to the CC)
 
(11 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
[[File:GitHub logo 2013.svg|x64px|right]]
 
[[File:GitHub logo 2013.svg|x64px|right]]
  
'''GitHub, Inc.''' is a provider of [[wikipedia:Internet hosting service|Internet hosting]] for [[wikipedia:software development|software development]] and [[wikipedia:version control|version control]] using [[wikipedia:Git|Git]]. It offers the [[wikipedia:distributed version control|distributed version control]] and [[wikipedia:source code management|source code management]] (SCM) functionality of Git, plus its own features. It provides [[wikipedia:access control|access control]] and several collaboration features such as [[wikipedia:bug tracking system|bug tracking]], [[wikipedia:software feature|feature]] requests, [[wikipedia:task management|task management]], [[wikipedia:continuous integration|continuous integration]] and [[wikipedia:wiki|wiki]]s for every project.<ref name="hugeinvestment">https://web.archive.org/web/20200919130235/https://techcrunch.com/2012/07/09/github-pours-energies-into-enterprise-raises-100-million-from-power-vc-andreesen-horowitz/</ref> Headquartered in [[wikipedia:California|California]], it has been a subsidiary of [[wikipedia:Microsoft|Microsoft]] since 2018.<ref name="techcrunch" />
+
'''GitHub, Inc.''' is a provider of [[wikipedia:Internet hosting service|Internet hosting]] for [[wikipedia:software development|software development]] and [[wikipedia:version control|version control]] using [[wikipedia:Git|Git]]. It offers the [[wikipedia:distributed version control|distributed version control]] and [[wikipedia:source code management|source code management]] (SCM) functionality of Git, plus its own features. It provides [[wikipedia:access control|access control]] and several collaboration features such as [[wikipedia:bug tracking system|bug tracking]], [[wikipedia:software feature|feature]] requests, [[wikipedia:task management|task management]], [[wikipedia:continuous integration|continuous integration]] and [[wikipedia:wiki|wiki]]s for every project.<ref name="hugeinvestment">https://web.archive.org/web/20200919130235/https://techcrunch.com/2012/07/09/github-pours-energies-into-enterprise-raises-100-million-from-power-vc-andreesen-horowitz/</ref> Headquartered in [[wikipedia:California|California]], it has been a subsidiary of [[wikipedia:Microsoft|Microsoft]] since 2018.
  
 
It is commonly used to host [[wikipedia:open-source|open-source]] projects.<ref>https://web.archive.org/web/20150629152927/http://www.wired.com/2015/06/problem-putting-worlds-code-github/</ref> As of November 2021, GitHub reports having over 73&nbsp;million developers<ref>https://github.com/search?q=type:user&type=Users</ref> and more than 200&nbsp;million [[wikipedia:Repository (version control)|repositories]]<ref>https://github.com/search</ref> (including at least 28&nbsp;million public repositories).<ref>https://github.com/search?q=is:public</ref> It is the largest [[wikipedia:source code|source code]] host as of November 2021.<ref>https://www.win.tue.nl/~aserebre/msr14georgios.pdf</ref>
 
It is commonly used to host [[wikipedia:open-source|open-source]] projects.<ref>https://web.archive.org/web/20150629152927/http://www.wired.com/2015/06/problem-putting-worlds-code-github/</ref> As of November 2021, GitHub reports having over 73&nbsp;million developers<ref>https://github.com/search?q=type:user&type=Users</ref> and more than 200&nbsp;million [[wikipedia:Repository (version control)|repositories]]<ref>https://github.com/search</ref> (including at least 28&nbsp;million public repositories).<ref>https://github.com/search?q=is:public</ref> It is the largest [[wikipedia:source code|source code]] host as of November 2021.<ref>https://www.win.tue.nl/~aserebre/msr14georgios.pdf</ref>
Line 23: Line 23:
  
 
In addition, GitHub supports the following formats and features:
 
In addition, GitHub supports the following formats and features:
* Documentation,<ref>https://docs.github.com/en</ref> including automatically rendered [[wikipedia:README|README]] files in a variety of [[wikipedia:Markdown|Markdown]]-like file formats (see {{Section link|README|On GitHub}})
+
* Documentation,<ref>https://docs.github.com/en</ref> including automatically rendered [[wikipedia:README|README]] files in a variety of [[wikipedia:Markdown|Markdown]]-like file formats
*[[Wikis]]<ref>{{Cite web|title=About wikis|url=https://docs.github.com/en/communities/documenting-your-project-with-wikis/about-wikis|access-date=2021-09-21|website=GitHub Docs|language=en}}</ref>
+
*[[wikipedia:Wikis|Wikis]]<ref>https://docs.github.com/en/communities/documenting-your-project-with-wikis/about-wikis</ref>
* GitHub Actions,<ref>{{Cite web|title=Features • GitHub Actions|url=https://github.com/features/actions|access-date=2021-09-21|website=GitHub|language=en}}</ref> which allows building [[continuous integration]] and [[continuous deployment]] pipelines for testing, releasing and deploying software without the use of third-party websites/platforms
+
* GitHub Actions,<ref>https://github.com/features/actions</ref> which allows building [[wikipedia:continuous integration|continuous integration]] and [[wikipedia:continuous deployment|continuous deployment]] pipelines for testing, releasing and deploying software without the use of third-party websites/platforms
 
* Graphs: pulse, contributors, commits, code frequency, punch card, network, members
 
* Graphs: pulse, contributors, commits, code frequency, punch card, network, members
* Integrations Directory<ref>{{cite web |url = https://github.com/integrations |title = Integrations Directory |work = GitHub |access-date = April 30, 2016 |archive-date = March 22, 2021 |archive-url = https://web.archive.org/web/20210322042236/https://github.com/integrations |url-status = live }}</ref>
+
* Integrations Directory<ref>https://github.com/integrations</ref>
* Email notifications<ref>{{Cite web|title=About email notifications for pushes to your repository|url=https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/about-email-notifications-for-pushes-to-your-repository|access-date=2021-09-21|website=GitHub Docs|language=en}}</ref>
+
* Email notifications<ref>https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/about-email-notifications-for-pushes-to-your-repository</ref>
* Discussions<ref>{{Cite web|title=GitHub Discussions Documentation|url=https://docs.github.com/en/discussions|access-date=2021-09-21|website=GitHub Docs|language=en}}</ref>
+
* Discussions<ref>https://docs.github.com/en/discussions</ref>
* Option to subscribe someone to notifications by [[Mention (blogging)|@ mentioning]] them.<ref>{{cite web |url = https://github.com/blog/821 |title = Mention @somebody. They're notified. |work = GitHub |date = March 23, 2011 |access-date = April 30, 2016 |archive-date = March 22, 2021 |archive-url = https://web.archive.org/web/20210322042255/https://github.blog/2011-03-23-mention-somebody-they-re-notified/ |url-status = live }}</ref>
+
* Option to subscribe someone to notifications by [[wikipedia:Mention (blogging)|@ mentioning]] them.<ref>https://github.com/blog/821</ref>
* [[Emoji]]s<ref>{{cite web |url = https://help.github.com/categories/writing-on-github/ |title = Github Help / Categories / Writing on GitHub |publisher = Github.com |access-date = April 30, 2016 |archive-date = March 22, 2021 |archive-url = https://web.archive.org/web/20210322042258/https://docs.github.com/en/github/writing-on-github |url-status = live }}</ref>
+
* [[wikipedia:Emoji|Emoji]]s<ref>https://help.github.com/categories/writing-on-github/</ref>
* Nested [[to do list|task-lists]] within files
+
* Nested [[wikipedia:to do list|task-lists]] within files
* Visualization of [[Geospatial analysis|geospatial]] data
+
* Visualization of [[wikipedia:Geospatial analysis|geospatial]] data
* 3D render files that can be previewed using a new integrated STL file viewer that displays the files on a "3D canvas."<ref name="3d">{{cite web |url = https://makezine.com/2013/04/09/github-now-supports-stl-file-viewing/ |title = GitHub Now Supports STL File Viewing |date = April 9, 2013 |last1 = Weinhoffer |first1 = Eric |access-date = February 13, 2018 |archive-date = March 22, 2021 |archive-url = https://web.archive.org/web/20210322042257/https://makezine.com/2013/04/09/github-now-supports-stl-file-viewing/ |url-status = live }}</ref> The viewer is powered by [[WebGL]] and [[Three.js]].
+
* 3D render files that can be previewed using a new integrated STL file viewer that displays the files on a "3D canvas."<ref name="3d">https://makezine.com/2013/04/09/github-now-supports-stl-file-viewing/</ref> The viewer is powered by [[wikipedia:WebGL|WebGL]] and [[wikipedia:Three.js|Three.js]].
 
* Photoshop's native PSD format can be previewed and compared to previous versions of the same file.
 
* Photoshop's native PSD format can be previewed and compared to previous versions of the same file.
 
* PDF document viewer
 
* PDF document viewer
* Security Alerts of known [[Common Vulnerabilities and Exposures]] in different packages
+
* Security Alerts of known [[wikipedia:Common Vulnerabilities and Exposures|Common Vulnerabilities and Exposures]] in different packages
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."<ref>{{cite web |url=https://help.github.com/articles/github-terms-of-service/ |title=GitHub Terms of Service - User Documentation |publisher=Help.github.com |date=February 11, 2016 |access-date=December 5, 2016 |archive-date=June 24, 2015 |archive-url=https://web.archive.org/web/20150624142711/https://help.github.com/articles/github-terms-of-service/ |url-status=live }}</ref>
+
GitHub's Terms of Service do not require public software projects hosted on GitHub to meet the [[wikipedia:Open Source Definition|Open Source Definition]]. The [[wikipedia:terms of service|terms of service]] state, "By setting your repositories to be viewed publicly, you agree to allow others to view and fork your repositories."<ref>https://help.github.com/articles/github-terms-of-service/</ref>
  
=== GitHub Enterprise ===
+
=== Gist ===
GitHub Enterprise is a self-managed version of GitHub.com with similar functionality. It can be run on an organization's own hardware or on a cloud provider, and it has been available since November 2011.<ref>[https://github.blog/2011-11-01-introducing-github-enterprise/ Introducing GitHub Enterprise] {{Webarchive|url=https://web.archive.org/web/20210322042228/https://github.blog/2011-11-01-introducing-github-enterprise/ |date=March 22, 2021 }} ''GitHub''</ref> In November 2020, source code for GitHub Enterprise Server was leaked online in 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.<ref>{{Cite web|last=Salter|first=Jim|date=2020-11-05|title=GitHub's source code was leaked on GitHub last night... sort of|url=https://arstechnica.com/information-technology/2020/11/githubs-source-code-was-leaked-on-github-last-night-sort-of/|access-date=2020-11-06|website=Ars Technica|language=en-us|archive-date=March 22, 2021|archive-url=https://web.archive.org/web/20210322042302/https://arstechnica.com/information-technology/2020/11/githubs-source-code-was-leaked-on-github-last-night-sort-of/|url-status=live}}</ref><ref>{{Cite web|last=Cimpanu|first=Catalin|title=GitHub denies getting hacked|url=https://www.zdnet.com/article/github-denies-getting-hacked/|access-date=2020-11-06|website=ZDNet|language=en|archive-date=March 22, 2021|archive-url=https://web.archive.org/web/20210322042249/https://www.zdnet.com/article/github-denies-getting-hacked/|url-status=live}}</ref>
+
GitHub also operates a [[wikipedia:pastebin|pastebin]]-style site called '''Gist''',<ref name="pastie"/> which is for [[wikipedia:Snippet (programming)|code snippets]], as opposed to GitHub proper, which is for larger projects. Tom Preston-Werner débuted the feature at a Ruby conference in 2008.<ref>https://groups.google.com/forum/#!topic/god-rb/Acyit8SlgcI</ref>
  
=== GitHub Pages ===
+
Gist builds on the traditional simple concept of a pastebin by adding version control for code snippets, easy forking, and [[wikipedia:Transport Layer Security|TLS encryption]] for private pastes. Because each "gist" has its own Git repository, multiple code snippets can be contained in a single paste and they can be pushed and pulled using Git.
  
'''GitHub Pages''' is a [[Static web page|static]] [[web hosting service]] offered by GitHub since 2008 to GitHub users for hosting user [[blog]]s, project documentation,<ref>{{Cite book|url=https://books.google.com/books?id=OhdOBQAAQBAJ&pg=PA66|title=Introducing GitHub: A Non-Technical Guide|last1=Bell|first1=Peter|last2=Beer|first2=Brent|date=2014-11-11|publisher="O'Reilly Media, Inc."|isbn=9781491949832|language=en|access-date=June 15, 2019|archive-date=August 1, 2020|archive-url=https://web.archive.org/web/20200801224627/https://books.google.com/books?id=OhdOBQAAQBAJ&pg=PA66|url-status=live}}</ref><ref>{{Cite book|url=https://books.google.com/books?id=E9dOCwAAQBAJ&pg=PA125|title=GitHub Essentials|last=Pipinellis|first=Achilleas|date=2015-09-30|publisher=Packt Publishing Ltd|isbn=9781783553723|language=en|access-date=June 15, 2019|archive-date=August 1, 2020|archive-url=https://web.archive.org/web/20200801224635/https://books.google.com/books?id=E9dOCwAAQBAJ&pg=PA125|url-status=live}}</ref> or even whole books created as a page.<ref>{{Cite book|url=https://books.google.com/books?id=8nm0DQAAQBAJ&pg=PA88|title=bookdown: Authoring Books and Technical Documents with R Markdown|last=Xie|first=Yihui|date=2016-12-12|publisher=CRC Press|isbn=9781351792608|language=en|access-date=June 15, 2019|archive-date=August 1, 2020|archive-url=https://web.archive.org/web/20200801234724/https://books.google.com/books?id=8nm0DQAAQBAJ&pg=PA88|url-status=live}}</ref>
+
Unregistered users were able to upload Gists until February 18, 2018, when uploading gists became available only to logged-in users, reportedly to mitigate [[wikipedia:spamming|spamming]].<ref>https://github.blog/2018-02-18-deprecation-notice-removing-anonymous-gist-creation/</ref>
  
All GitHub Pages content is stored in a Git repository, either as files served to visitors verbatim or in [[GitHub Flavored Markdown|Markdown]] format. GitHub is seamlessly integrated with [[Jekyll (software)|Jekyll]] static web site 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.<ref>{{Cite web|url=https://www.smashingmagazine.com/2014/08/build-blog-jekyll-github-pages/|title=Build A Blog With Jekyll And GitHub Pages|date=2014-08-01|website=[[Smashing Magazine]]|language=en|access-date=2019-06-15|archive-date=December 7, 2020|archive-url=https://web.archive.org/web/20201207120900/https://www.smashingmagazine.com/2014/08/build-blog-jekyll-github-pages/|url-status=live}}</ref>
+
Gists' [[wikipedia:URL|URL]]s use hexadecimal IDs, and edits to gists are recorded in a [[wikipedia:version control|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 and "starred", i.e. publicly bookmarked. The count of revisions, stars, and forks is indicated on the gist page.<ref>https://gist.github.com/shaunlebron/746476e6e7a4d698b373/revisions</ref>
  
As with the rest of GitHub, it includes both free and paid tiers of service, instead of being supported by [[Online advertising|web advertising]]. Web sites generated through this service are hosted either as [[subdomain]]s of the github.io domain, or as custom [[Domain name|domains]] bought through a third-party [[domain name registrar]].<ref>{{Cite book|url=https://books.google.com/books?id=WwJwDQAAQBAJ&pg=PA340|title=Ubuntu Server Cookbook|last=Sawant|first=Uday R.|date=2016-06-30|publisher=Packt Publishing Ltd|isbn=9781785887987|language=en|access-date=June 15, 2019|archive-date=August 1, 2020|archive-url=https://web.archive.org/web/20200801224628/https://books.google.com/books?id=WwJwDQAAQBAJ&pg=PA340|url-status=live}}</ref>  When custom domain is set on a GitHub Pages repo a [[Let's Encrypt]] certificate for it is generated automatically.  Once the certificate has been generated Enforce HTTPS can be set for the repository's website to transparently redirect all HTTP requests to HTTPS.<ref>All GitHub Pages sites, including sites that are correctly configured with a custom domain, support HTTPS and HTTPS enforcement.{{cite web |url=https://help.github.com/en/github/working-with-github-pages/securing-your-github-pages-site-with-https |title=Securing your GitHub Pages site with HTTPS |website=help.github.com |publisher=GitHub |access-date=2020-06-01 |archive-date=March 22, 2021 |archive-url=https://web.archive.org/web/20210322042317/https://docs.github.com/en/github/working-with-github-pages/securing-your-github-pages-site-with-https |url-status=live }}</ref><ref>Custom domains on GitHub Pages gain support for HTTPS.{{cite web |url=https://github.blog/2018-05-01-github-pages-custom-domains-https |title=Custom domains on GitHub Pages gain support for HTTPS |first=Parker |last=Moore |date=2018-05-01 |website=github.blog |publisher=GitHub |access-date=2020-06-01 |archive-date=March 22, 2021 |archive-url=https://web.archive.org/web/20210322042231/https://github.blog/2018-05-01-github-pages-custom-domains-https/ |url-status=live }}</ref>
+
=== GitHub Sponsors ===
 +
GitHub Sponsors allows users to make monthly money donations to projects hosted on GitHub.<ref>https://github.com/sponsors</ref> The public beta was announced on May 23, 2019, and the project accepts wait list registrations. [[wikipedia:The Verge|The Verge]] said that GitHub Sponsors "works exactly like [[wikipedia:Patreon|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 offer 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 still can use other similar services like Patreon and Open Collective and link to their own websites.<ref>https://www.theverge.com/2019/5/23/18637344/github-sponsors-patreon-style-crowdfunding-open-source</ref><ref>https://github.blog/2019-05-23-announcing-github-sponsors-a-new-way-to-contribute-to-open-source/</ref>
  
=== Gist ===
+
==GitHub Archive Program==
GitHub also operates a [[pastebin]]-style site called '''Gist''',<ref name="pastie"/> which is for [[Snippet (programming)|code snippets]], as opposed to GitHub proper, which is for larger projects.{{Citation needed|date=June 2021}} Tom Preston-Werner débuted the feature at a Ruby conference in 2008.<ref>{{cite conference |title = God's memory leak - a scientific treatment |authorlink = Tom Preston-Werner |first = Tom |last = Preston-Werner |url = https://groups.google.com/forum/#!topic/god-rb/Acyit8SlgcI |date = July 20, 2008 |conference = RubyFringe |conference-url = https://unspace.ca/rubyfringe/ |access-date = October 21, 2014 |quote = He previewed the upcoming git feature gist |archive-date = January 22, 2011 |archive-url = http://arquivo.pt/wayback/20110122130054/https://groups.google.com/forum/#!topic/god-rb/Acyit8SlgcI |url-status = live }}</ref>
+
In July 2020, GitHub stored a February archive of the site<ref name=blog>https://github.blog/2020-07-16-github-archive-program-the-journey-of-the-worlds-open-source-code-to-the-arctic/</ref> in an abandoned mountain mine in [[wikipedia:Svalbard|Svalbard]], Norway, part of the [[wikipedia:Arctic World Archive|Arctic World Archive]] and not far from the [[wikipedia:Svalbard Global Seed Vault|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 21[[wikipedia:terabyte|TB]] of data was stored on [[wikipedia:piqlFilm|piqlFilm]] archival film reels as [[wikipedia:Barcode#Matrix (2D) barcodes|matrix (2D) barcode]] ([[wikipedia:Boxing barcode|Boxing barcode]]), and is expected to last 500–1,000 years.<ref>https://gizmodo.com/github-has-stored-its-code-in-an-arctic-vault-it-hopes-1844420340</ref><ref>https://www.msn.com/en-us/news/technology/github-the-worlds-largest-open-source-software-site-just-had-mounds-of-data-stored-in-the-permafrost-chamber-of-an-old-coal-mine-deep-in-an-arctic-mountain-for-1000-years/ar-BB16U75c</ref><ref>https://www.vice.com/en_ca/article/m7jpab/21-terabytes-of-open-source-code-is-now-stored-in-an-arctic-vault</ref><ref name=buried>https://www.abc.net.au/news/2020-08-13/github-code-vault-in-artic-svalbard-safeguards-against-calamity/12517948</ref>
  
Gist builds on the traditional simple concept of a [[pastebin]] by adding version control for code snippets, easy forking, and [[Transport Layer Security|TLS encryption]] for private pastes. Because each "gist" has its own Git repository, multiple code snippets can be contained in a single paste and they can be pushed and pulled using Git.{{Citation needed|date=January 2019}}
+
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 [[wikipedia:quartz glass|quartz glass]] platters, using a  high-precision laser that pulses a [[wikipedia:quadrillion|quadrillion]] (1,000,000,000,000,000) times per second.<ref name=buried/>
  
Unregistered users were able to upload Gists until February 18, 2018, when uploading gists became available only to logged-in users, reportedly to mitigate [[spamming]].<ref>{{Cite web|date=2018-02-19|title=Deprecation Notice: Removing Anonymous Gist Creation|url=https://github.blog/2018-02-18-deprecation-notice-removing-anonymous-gist-creation/|access-date=2020-09-30|website=The GitHub Blog |archive-date=March 22, 2021|archive-url=https://web.archive.org/web/20210322042244/https://github.blog/2018-02-18-deprecation-notice-removing-anonymous-gist-creation/|url-status=live}}</ref>
+
==GitHub in use in the Creatures Community==
 +
Arguably, the first Creatures-related repository was [[openc2e]], created by [[CCDevNet]] in May 2008.<ref>https://github.com/ccdevnet?tab=overview&from=2008-12-01&to=2008-12-31</ref>  The [[GIMP Plugin]] source code was placed on GitHub some time after 2008, when it was updated.<ref>https://github.com/ligfx/gimp-creatures-sprites#readme</ref>
  
Gists' [[URL]]s use hexadecimal IDs, and edits to gists are recorded in a [[version control|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 and "starred", i.e. publicly bookmarked. The count of revisions, stars, and forks is indicated on the gist page.<ref>{{Cite web|url=https://gist.github.com/shaunlebron/746476e6e7a4d698b373/revisions|title=Build software better, together}}</ref>
+
[[c2ephp]] was created as a GitHub repository by [[Telyn]] in 2010.<ref>https://github.com/telyn?tab=overview&from=2010-03-01&to=2010-03-31</ref>
  
=== Education program ===
+
[[Pilla]] uses GitHub for her projects, including the [[Other Lone Shee Ark]], [[CAev]], the [[Fixup Metaroom]] project for CCSF 2017, the [[Betaship]], [[Pilla's Improved Favplaces]], the [[Elevator vendor]], [[Heatlamp]], [[Import Picker]], [[Game Controller]], small tools, the updated metaroom map, and the [[Banshee Ark]].
GitHub launched a new program called the GitHub Student Developer Pack to give students free access to popular development tools and services. GitHub partnered with [[Bitnami]], [[Crowdflower]], [[DigitalOcean]], [[DNSimple]], [[HackHands]], [[Namecheap]], Orchestrate, Screenhero, [[SendGrid]], [[Stripe (company)|Stripe]], [[Travis CI]] and [[Unreal Engine]] to launch the program.<ref>{{cite news|first=Frederic|last=Lardinois|work=TechCrunch|url=https://techcrunch.com/2014/10/07/github-partners-with-digital-ocean-unreal-engine-and-others-to-give-students-free-access-to-developer-tools/|title=GitHub Partners With Digital Ocean, Unreal Engine, Others To Give Students Free Access To Developer Tools|date=October 7, 2014|access-date=October 7, 2014|archive-date=March 22, 2021|archive-url=https://web.archive.org/web/20210322042209/https://techcrunch.com/2014/10/07/github-partners-with-digital-ocean-unreal-engine-and-others-to-give-students-free-access-to-developer-tools/|url-status=live}}</ref>
 
  
In 2016 GitHub announced the launch of the GitHub Campus Experts program<ref>{{cite web|url=https://github.blog/2016-06-25-github-campus-experts-technology-leadership-at-your-school/|title=GitHub Campus Experts - Technology leadership at your school|date=2016-06-25|website=The GitHub Blog|language=en-US|access-date=2019-01-22}}</ref> to train and encourage students to grow technology communities at their universities. The Campus Experts program is open to university students of 18 years and older across the world.<ref>{{cite web|url=https://education.github.com/experts|title=GitHub Campus Experts|website=GitHub Education|access-date=2019-01-22}}</ref> 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 consisting of multiple modules designed to grow community leadership skills.
+
[[Zzzzoot]] maintains several GitHub repositories for his Creatures projects, including the [[Bendy plant]] and [[Puff plant]] released for [[CCSF 2017]], a repository of helpful scripts for Docking Station, the [[Children of Capillata]] metarooms, a [[Blender]] script for turning models into Creatures sprites, and [[Storyteller]].
  
=== GitHub Marketplace service ===
+
[[Geat Masta]] used GitHub extensively for his later projects, including [[LibFreetures]], [[C16scaler]], [[MapEditor2]] and [[Kreatures]].
GitHub also provides some [[software as a service]] ("SaaS") integrations for adding extra features to projects. Those services include:
 
* Waffle.io: Project management for software teams. Automatically see pull requests, automated builds, reviews, and deployments across all of your repositories in GitHub.
 
* Rollbar: Integrate with GitHub to provide real time debugging tools and full-stack exception reporting. It is compatible with all popular code languages, such as [[JavaScript]], [[Python (programming language)|Python]], [[.NET Framework|.NET]], [[Ruby (programming language)|Ruby]], [[PHP]], [[Node.js]], [[Android (operating system)|Android]], [[iOS]], [[Go (programming language)|Go]], [[Java (programming language)|Java]], and [[C Sharp (programming language)|C#]].
 
* Codebeat: For automated code analysis specialized in web and mobile developers. The supported languages for this software are: [[Elixir (programming language)|Elixir]], [[Go (programming language)|Go]], [[Java (programming language)|Java]], [[Swift (programming language)|Swift]], [[JavaScript]], [[Python (programming language)|Python]], [[Ruby (programming language)|Ruby]], [[Kotlin (programming language)|Kotlin]], [[Objective-C]], and [[TypeScript]].
 
* [[Travis CI]]: To provide confidence for your apps while doing test and ship. Also gives full control over the build environment, to adapt it to the code. Supported languages: [[Go (programming language)|Go]], [[Java (programming language)|Java]], [[JavaScript]], [[Objective-C]], [[Python (programming language)|Python]], [[PHP]], [[Ruby (programming language)|Ruby]], and [[Swift (programming language)|Swift]].
 
* GitLocalize: Developed for teams that are translating their content from one point to another. GitLocalize automatically syncs with your repository so you can keep your workflow on GitHub. It also keeps you updated on what needs to be translated.
 
  
=== GitHub Sponsors ===
+
[[Ham5ter]] uses GitHub for projects such as the [[CAOS Class Library]], [[CAOS Console]], [[Prayer]] and [[Albian Warp]].
GitHub Sponsors allows users to make monthly money donations to projects hosted on GitHub.<ref>{{Cite web |url=https://github.com/sponsors |title=GitHub Sponsors |website=[[GitHub]] |access-date=May 24, 2019 |archive-date=March 22, 2021 |archive-url=https://web.archive.org/web/20210322042235/https://github.com/sponsors |url-status=live }}</ref> The public beta was announced on May 23, 2019, and the project accepts wait list 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 offer 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 still can use other similar services like Patreon and Open Collective and link to their own websites.<ref>{{Cite web|url=https://www.theverge.com/2019/5/23/18637344/github-sponsors-patreon-style-crowdfunding-open-source|title=GitHub launches Sponsors, a Patreon-style funding tool for developers|last=Kastrenakes|first=Jacob|date=2019-05-23|website=The Verge|access-date=2019-05-24|archive-date=March 22, 2021|archive-url=https://web.archive.org/web/20210322042246/https://www.theverge.com/2019/5/23/18637344/github-sponsors-patreon-style-crowdfunding-open-source|url-status=live}}</ref><ref>{{Cite web|url=https://github.blog/2019-05-23-announcing-github-sponsors-a-new-way-to-contribute-to-open-source/|title=Announcing GitHub Sponsors: a new way to contribute to open source|date=2019-05-23|website=The GitHub Blog|language=en-US|access-date=2019-05-24|archive-date=March 22, 2021|archive-url=https://web.archive.org/web/20210322042246/https://github.blog/2019-05-23-announcing-github-sponsors-a-new-way-to-contribute-to-open-source/|url-status=live}}</ref>
 
 
 
==GitHub Archive Program==
 
In July 2020, GitHub stored a February archive of the site<ref name=blog>https://github.blog/2020-07-16-github-archive-program-the-journey-of-the-worlds-open-source-code-to-the-arctic/</ref> in an abandoned mountain mine in [[wikipedia:Svalbard|Svalbard]], Norway, part of the [[wikipedia:Arctic World Archive|Arctic World Archive]] and not far from the [[wikipedia:Svalbard Global Seed Vault|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 21[[wikipedia:terabyte|TB]] of data was stored on [[wikipedia:piqlFilm|piqlFilm]] archival film reels as [[wikipedia:Barcode#Matrix (2D) barcodes|matrix (2D) barcode]] ([[wikipedia:Boxing barcode|Boxing barcode]]), and is expected to last 500–1,000 years.<ref>https://gizmodo.com/github-has-stored-its-code-in-an-arctic-vault-it-hopes-1844420340</ref><ref>https://www.msn.com/en-us/news/technology/github-the-worlds-largest-open-source-software-site-just-had-mounds-of-data-stored-in-the-permafrost-chamber-of-an-old-coal-mine-deep-in-an-arctic-mountain-for-1000-years/ar-BB16U75c</ref><ref>https://www.vice.com/en_ca/article/m7jpab/21-terabytes-of-open-source-code-is-now-stored-in-an-arctic-vault</ref><ref name=buried>https://www.abc.net.au/news/2020-08-13/github-code-vault-in-artic-svalbard-safeguards-against-calamity/12517948</ref>
 
  
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 [[wikipedia:quartz glass|quartz glass]] platters, using a  high-precision laser that pulses a [[wikipedia:quadrillion|quadrillion]] (1,000,000,000,000,000) times per second.<ref name=buried/>
+
[[Malkin]] uses GitHub for some of her more recent projects, such as the [[Mushroom Forest]] metaroom.
  
==GitHub in use in the Creatures Community==
+
[[Sgeo]] has used GitHub for [[Revive Creature]].
Arguably, the first Creatures-related repository was [[openc2e]], created by [[CCDevNet]] in May 2008.<ref>https://github.com/ccdevnet?tab=overview&from=2008-12-01&to=2008-12-31</ref>
 
  
 
== See also ==
 
== See also ==

Latest revision as of 23:15, 3 December 2021

GitHub logo 2013.svg

GitHub, Inc. is a provider of Internet hosting for software development and version control using Git. It offers the distributed version control and source code management (SCM) functionality of Git, plus its own features. It provides access control and several collaboration features such as bug tracking, feature requests, task management, continuous integration and wikis for every project.[1] Headquartered in California, it has been a subsidiary of Microsoft since 2018.

It is commonly used to host open-source projects.[2] As of November 2021, GitHub reports having over 73 million developers[3] and more than 200 million repositories[4] (including at least 28 million public repositories).[5] It is the largest source code host as of November 2021.[6]

History[edit]

GitHub.com[edit]

Development of the GitHub.com platform began on October 19, 2007.[7][8][9] The site was launched in April 2008 by Tom Preston-Werner, Chris Wanstrath, P. J. Hyett and Scott Chacon after it had been made available for a few months prior as a beta release.[10] GitHub has an annual keynote called GitHub Universe.[11]

In early July 2020, the GitHub Archive Program was established, to archive its open source code in perpetuity.[12]

Services[edit]

Projects on GitHub.com can be accessed and managed using the standard Git command-line interface; all standard Git commands work with it. GitHub.com also allows users to browse public repositories on the site. Multiple desktop clients and Git plugins are also available. 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 are able to have discussions, manage repositories, submit contributions to others' repositories, and review changes to code. GitHub.com began offering unlimited private repositories at no cost in January 2019 (limited to three contributors per project). Previously, only public repositories were free.[13][14][15] On April 14, 2020, GitHub made "all of the core GitHub features" free for everyone, including "private repositories with unlimited collaborators."[16]

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,[17] Hyett, and Preston-Werner.

Scope[edit]

The main purpose of GitHub.com 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.com) allows pull requests to propose changes to the source code. Users with the ability to review the proposed changes can see a diff of 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:

  • Documentation,[18] including automatically rendered README files in a variety of Markdown-like file formats
  • Wikis[19]
  • GitHub Actions,[20] which allows building continuous integration and continuous deployment pipelines for testing, releasing and deploying software without the use of third-party websites/platforms
  • Graphs: pulse, contributors, commits, code frequency, punch card, network, members
  • Integrations Directory[21]
  • Email notifications[22]
  • Discussions[23]
  • Option to subscribe someone to notifications by @ mentioning them.[24]
  • Emojis[25]
  • Nested task-lists within files
  • Visualization of geospatial data
  • 3D render files that can be previewed using a new integrated STL file viewer that displays the files on a "3D canvas."[26] The viewer is powered by WebGL and Three.js.
  • Photoshop's native PSD format can be previewed and compared to previous versions of the same file.
  • PDF document viewer
  • Security Alerts of known Common Vulnerabilities and Exposures in different packages

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."[27]

Gist[edit]

GitHub also operates a pastebin-style site called Gist,[10] which is for code snippets, as opposed to GitHub proper, which is for larger projects. Tom Preston-Werner débuted the feature at a Ruby conference in 2008.[28]

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" has its own Git repository, multiple code snippets can be contained in a single paste and they can be pushed and pulled using Git.

Unregistered users were able to upload Gists until February 18, 2018, when uploading gists became available only to logged-in users, reportedly to mitigate spamming.[29]

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 and "starred", i.e. publicly bookmarked. The count of revisions, stars, and forks is indicated on the gist page.[30]

GitHub Sponsors[edit]

GitHub Sponsors allows users to make monthly money donations to projects hosted on GitHub.[31] The public beta was announced on May 23, 2019, and the project accepts wait list 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 offer 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 still can use other similar services like Patreon and Open Collective and link to their own websites.[32][33]

GitHub Archive Program[edit]

In July 2020, GitHub stored a February archive of the site[12] 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.[34][35][36][37]

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 laser that pulses a quadrillion (1,000,000,000,000,000) times per second.[37]

GitHub in use in the Creatures Community[edit]

Arguably, the first Creatures-related repository was openc2e, created by CCDevNet in May 2008.[38] The GIMP Plugin source code was placed on GitHub some time after 2008, when it was updated.[39]

c2ephp was created as a GitHub repository by Telyn in 2010.[40]

Pilla uses GitHub for her projects, including the Other Lone Shee Ark, CAev, the Fixup Metaroom project for CCSF 2017, the Betaship, Pilla's Improved Favplaces, the Elevator vendor, Heatlamp, Import Picker, Game Controller, small tools, the updated metaroom map, and the Banshee Ark.

Zzzzoot maintains several GitHub repositories for his Creatures projects, including the Bendy plant and Puff plant released for CCSF 2017, a repository of helpful scripts for Docking Station, the Children of Capillata metarooms, a Blender script for turning models into Creatures sprites, and Storyteller.

Geat Masta used GitHub extensively for his later projects, including LibFreetures, C16scaler, MapEditor2 and Kreatures.

Ham5ter uses GitHub for projects such as the CAOS Class Library, CAOS Console, Prayer and Albian Warp.

Malkin uses GitHub for some of her more recent projects, such as the Mushroom Forest metaroom.

Sgeo has used GitHub for Revive Creature.

See also[edit]

References[edit]

  1. https://web.archive.org/web/20200919130235/https://techcrunch.com/2012/07/09/github-pours-energies-into-enterprise-raises-100-million-from-power-vc-andreesen-horowitz/
  2. https://web.archive.org/web/20150629152927/http://www.wired.com/2015/06/problem-putting-worlds-code-github/
  3. https://github.com/search?q=type:user&type=Users
  4. https://github.com/search
  5. https://github.com/search?q=is:public
  6. https://www.win.tue.nl/~aserebre/msr14georgios.pdf
  7. https://blogs.esri.com/esri/arcgis/2014/02/10/github-ceo-and-co-founder-chris-wanstrath-keynoting-esris-devsummit/
  8. https://github.com/blog/185-github-turns-one
  9. https://www.slideshare.net/err/inside-github/28-2007_octoberThe_rst_commit_was
  10. 10.0 10.1 https://www.sitepoint.com/github-gist-is-pastie-on-steroids/
  11. https://www.githubuniverse.com
  12. 12.0 12.1 https://github.blog/2020-07-16-github-archive-program-the-journey-of-the-worlds-open-source-code-to-the-arctic/
  13. http://fortune.com/2019/01/07/microsoft-github-free-code-projects-small-teams-repositories/
  14. https://www.cnet.com/news/github-is-giving-free-users-unlimited-private-repositories/
  15. https://www.businessinsider.com/github-adds-free-private-repositories-2019-1
  16. https://github.blog/2020-04-14-github-is-now-free-for-teams/
  17. https://web.archive.org/web/20130305051939/http://doeswhat.com/2012/03/06/interview-with-chris-wanstrath-github/
  18. https://docs.github.com/en
  19. https://docs.github.com/en/communities/documenting-your-project-with-wikis/about-wikis
  20. https://github.com/features/actions
  21. https://github.com/integrations
  22. https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/about-email-notifications-for-pushes-to-your-repository
  23. https://docs.github.com/en/discussions
  24. https://github.com/blog/821
  25. https://help.github.com/categories/writing-on-github/
  26. https://makezine.com/2013/04/09/github-now-supports-stl-file-viewing/
  27. https://help.github.com/articles/github-terms-of-service/
  28. https://groups.google.com/forum/#!topic/god-rb/Acyit8SlgcI
  29. https://github.blog/2018-02-18-deprecation-notice-removing-anonymous-gist-creation/
  30. https://gist.github.com/shaunlebron/746476e6e7a4d698b373/revisions
  31. https://github.com/sponsors
  32. https://www.theverge.com/2019/5/23/18637344/github-sponsors-patreon-style-crowdfunding-open-source
  33. https://github.blog/2019-05-23-announcing-github-sponsors-a-new-way-to-contribute-to-open-source/
  34. https://gizmodo.com/github-has-stored-its-code-in-an-arctic-vault-it-hopes-1844420340
  35. https://www.msn.com/en-us/news/technology/github-the-worlds-largest-open-source-software-site-just-had-mounds-of-data-stored-in-the-permafrost-chamber-of-an-old-coal-mine-deep-in-an-arctic-mountain-for-1000-years/ar-BB16U75c
  36. https://www.vice.com/en_ca/article/m7jpab/21-terabytes-of-open-source-code-is-now-stored-in-an-arctic-vault
  37. 37.0 37.1 https://www.abc.net.au/news/2020-08-13/github-code-vault-in-artic-svalbard-safeguards-against-calamity/12517948
  38. https://github.com/ccdevnet?tab=overview&from=2008-12-01&to=2008-12-31
  39. https://github.com/ligfx/gimp-creatures-sprites#readme
  40. https://github.com/telyn?tab=overview&from=2010-03-01&to=2010-03-31

Due to technical limitations, the complete revision history of this page can be found at wp:GitHub, excluding edits newer than this page's first edit.