Remove ads
透過Git進行版本控制的軟體原始碼代管服務 来自维基百科,自由的百科全书
GitHub是一個線上軟體原始碼代管服務平台,用於公開程式或軟體的代碼。使用Git作為版本控制軟體,由開發者克里斯·汪斯崔斯、P·J·海特和湯姆·普雷斯頓·沃納使用Ruby on Rails編寫而成。在2018年,GitHub被微軟公司收購。[2][3][4]
GitHub同時提供付費帳戶和免費帳戶。這兩種帳戶都可以建立公開或私有的代碼倉庫,但付費使用者擁有更多功能。根據在2009年的Git使用者調查,GitHub是最流行的Git存取站點[5]。除了允許個人和組織建立和存取保管中的代碼以外,它也提供了一些方便社會化共同軟體開發的功能,即一般人口中的社群功能,包括允許使用者追蹤其他使用者、組織、軟體庫的動態,對軟體代碼的改動和bug提出評論等。GitHub也提供了圖表功能,用於概觀顯示開發者們怎樣在代碼庫上工作以及軟體的開發活躍程度。
截至2022年6月,GitHub已經有超過5700萬註冊使用者[6]和1.9億代碼庫(包括至少2800萬開原始碼庫)[7],事實上已經成為了世界上最大的代碼代管網站和開源社群[8]。截至2023年1月26日,已經有超過1億開發人員使用GitHub。[9]
GitHub平台於2007年10月1日開始開發[10][11]。網站於2008年2月以beta版本開始上線,4月份正式上線。[12] GitHub裡面的專案可以透過標準的Git命令進行訪問和操作。同時,所有的Git命令都可以用到GitHub專案上面。GitHub開發了針對Microsoft Windows和macOS作業系統的桌面客戶端。此外,也可以使用第三方外掛程式來實現Git功能。
網站提供了一系列社群網路具有的功能,例如標星/讚(star)、跟隨(follow)、評論。使用者可以透過複刻(fork)他人專案的形式參與開發,並可透過協同運作示意圖來檢視有多少開發者參與了開發並追蹤最新的複刻版本。此外網站還有Wiki(透過一個名為 gollum 的軟體實現)等功能。
GitHub同時允許註冊使用者和非註冊使用者在網頁中瀏覽專案,也可以以ZIP格式打包下載。但是使用者必須註冊登入一個帳號才能討論、建立並編輯專案、參與他人的專案和代碼審查。
GitHub支援建立不限數量的公開倉庫,已付費使用者可以建立私有倉庫。2019年1月7日,GitHub宣布免費使用者也可以建立私有倉庫,私有倉庫數量不限但每個倉庫最多指定三個合作者[13]。2020年4月14日,GitHub宣布進一步開放核心功能,取消私有倉庫合作者數量限制,並降低了收費帳號費用[14]。
GitHub, Inc. 原本是扁平化的組織架構,沒有中階主管,而依賴於員工的自我管理能力。員工可以自由選擇有興趣的專案開發(自由分派),但是薪水由執行長訂定。
在2014年,GitHub新增了一層中階主管來應對關於高階主管的嚴重騷擾指控。針對此事件,執行長Tom Preston-Werner辭職。
GitHub系統由GitHub公司的開發者Chris Wanstrath開發。系統採用了Ruby on Rails和Erlang作為後端。[15]
GitHub通常用於軟體開發。GitHub還支援以下格式和功能:
GitHub的許可條款並不要求公有倉庫滿足自由軟體標準。在建立軟體倉庫時,GitHub會詢問使用者準備採取的軟體許可證,此外使用者也可以使用自己的許可證。
GitHub Enterprise和GitHub的服務類似,不過它為大型企業的開發團隊量身客製化,並可提供自代管版本伺服器軟體。[17]
GitHub Pages是GitHub提供的一個網頁代管服務,可以用於存放靜態網頁,包括部落格、專案文件甚至整本書[18]。一般GitHub Pages的網站使用github.io的子域名,但是使用者也可以使用第三方域名。Github Pages以開源倉庫公開靜態網頁原始碼,可在倉庫->設定->Code and automation里設定, https://github.com/ (頁面存檔備份,存於網際網路檔案館)<使用者名稱>/<倉庫名>/settings/pages。
GitHub提供一個貼上箱風格的站點GitHub Gist。
Tom Preston-Werner於2008年開發了Gist功能[19]。Gist繼承了貼上箱的觀念,此外還添加了版本控制、復刻、SSL加密等功能。因為代碼片段也是Git倉庫,所以單個代碼片段可以容納多個檔案,並且可以透過Git進行操作。因此Gist更像一個小型專案。
GitHub與Algolia、Microsoft Azure、Bitnami、Crowdflower、DigitalOcean、DNSimple、GitKraken、Heroku、HackHands、JetBrains、Namecheap、Name.com、Orchestrate、Screenhero、SendGrid、Stripe、Travis CI和虛幻引擎等共同合作,於2014年10月7日發起了一個名為GitHub學生開發者套裝的專案。該專案為學生提供了一些免費的開發工具和服務。[21][22]
許多知名程式庫、開發架構都採用GitHub作為為主版本控制平台,其中包括:
GitHub於2008年2月執行。[41]
在2009年2月24日透過雅虎進行的一次採訪中,GitHub隊伍成員們宣布在GitHub執行的第一年,有共計46,000個公共版本庫,它們中有17,000個是於最近一個月內建立的。當時,大概有6,200個版本庫被衍生(fork)至少一次,有4,600被合併。在另一個在2009年6月27日透過雅虎的採訪中,Tom Preston-Werner宣布版本庫數量已經提升到了90,000唯一性公共版本庫,有12,000個版本庫被衍生(fork)至少一次,總共有135,000個版本庫。[42]
在2010年6月,GitHub宣布它現在已經可提供1百萬專案,它們中的60%是完整的版本庫,但仍然有40%是「gist」或代碼片段。2011年4月,GitHub宣稱存放的代碼庫數量已達到2百萬個[43]。2013年4月,GitHub使用者數達到350萬,代碼庫數量達到6百萬個。[44]
GitHub曾在中國、俄羅斯和印度等國被審查和封鎖,雖然此網站是單純的技術社群一般較少具政治敏感訊息的議題,但相關代碼可用於開發突破網路審查等線上隱蔽軟體或者中介軟體;同時因其具有較方便的協同運作功能特性,因此有部分用於非代碼的政治訴求或敏感內容,因此相關政府要求對於該種資訊進行管制。GitHub在收到政府對某一倉庫的管制請求時,會將公文公開在官方倉庫github/gov-takedowns(頁面存檔備份,存於網際網路檔案館)。[46]
*.github.com
,以及raw.githubusercontent.com
的域名進行「間歇性」的封鎖。2022年6月,軟體自由保護組織呼籲開發者「放棄GitHub」[76],原因是他們相信GitHub Copilot的訓練過程涉及著作權爭議。
因GitHub開源社群性別嚴重失衡,男性群體高達95%以上[77],故GitHub常被網友們戲稱為「GayHub」、「全球最大同性交友網站」[來源請求][78]。
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.