...

GitHub 工程團隊的(de)開發環境遷移至 Codespaces

2021-08-12

GitHub 官方宣布,負責 github.com 的(de)工程團隊已将開發環境遷移至 Codespaces。

GitHub.com 的(de)代碼庫已誕生将近 14 年。當 github.com 的(de)第一(yī / yì /yí)個(gè) commit 被推送時(shí),Rails 隻有兩年的(de)曆史,AWS 才誕生一(yī / yì /yí)年,Azure 和(hé / huò) GCP 尚未問世。在(zài)這(zhè) 14 年裏,GitHub.com 的(de)核心倉庫 (github/github) 已收到(dào)超過一(yī / yì /yí)百萬次 commit,其中絕大(dà)部分來(lái)自于(yú)在(zài) macOS 上(shàng)構建和(hé / huò)測試的(de)開發者。

GitHub 稱,他(tā)們的(de)開發平台在(zài)不(bù)斷發展,過去的(de)幾個(gè)月裏,工程團隊從 macOS 轉向使用 Codespaces 進行 github.com 的(de)大(dà)部分開發。這(zhè)對于(yú)工程師的(de)日常開發流程是(shì)一(yī / yì /yí)個(gè)根本性的(de)轉變。GitHub 認爲(wéi / wèi)此舉讓 Codespaces 變得更強大(dà),他(tā)們也(yě)爲(wéi / wèi) github.com 的(de)未來(lái)發展做好了(le/liǎo)準備。

GitHub 表示,他(tā)們長期投入了(le/liǎo)大(dà)量時(shí)間和(hé / huò)精力來(lái)爲(wéi / wèi)團隊打造一(yī / yì /yí)個(gè)“開箱即用”的(de)本地(dì / de)開發環境,讓新員工可以(yǐ)迅速配置和(hé / huò)運行 github.com 的(de)本地(dì / de)實例。

但現實情況是(shì),雖然付出(chū)了(le/liǎo)許多努力,這(zhè)樣的(de)開發環境卻依舊十分脆弱。任何看似無害的(de)變更都可能會導緻本地(dì / de)環境失效,更糟糕的(de)是(shì),這(zhè)種情況往往需要(yào / yāo)數小時(shí)的(de)寶貴開發時(shí)間來(lái)恢複。

考慮到(dào)工程師的(de)開發環境各不(bù)相同,而(ér)且每個(gè)人(rén)都有自己習慣的(de)特殊癖好。GitHub 被 Codespaces 啓發,他(tā)們可以(yǐ)像對待基礎設施一(yī / yì /yí)樣對待開發環境,也(yě)就(jiù)是(shì)說(shuō)沒有什麽是(shì)不(bù)可替換,或者不(bù)可或缺的(de),并且如果出(chū)現意外情況,可在(zài)已知的(de)良好狀态下提供一(yī / yì /yí)個(gè)新的(de) Codespaces 然後重新開始工作。

GitHub 表示,遷移到(dào) Codespaces 解決了(le/liǎo)現有開發環境中的(de)缺點,激勵他(tā)們進一(yī / yì /yí)步推動改進産品,并提升了(le/liǎo)整體的(de)開發體驗。雖然此次開發環境的(de)遷移結局還算美好,但剛開始時(shí)還是(shì)頗具挑戰性。據介紹,GitHub.com 代碼庫在(zài)磁盤上(shàng)大(dà)約使用了(le/liǎo) 13GB 空間。單是(shì)克隆倉庫大(dà)約需要(yào / yāo) 20 分鍾,再加上(shàng)設置依賴項等,引導 GitHub.com 的(de) Codespaces 會耗時(shí) 45 分鍾以(yǐ)上(shàng)。

改變往往是(shì)十分困難的(de)事,對于(yú)開發環境來(lái)說(shuō)更是(shì)如此。GitHub 表示,他(tā)們此次遷移至 Codespaces 作爲(wéi / wèi)默認開發環境的(de)舉動雖然遇到(dào)不(bù)少挑戰,但對最後的(de)結果十分滿意,未來(lái)會繼續優化在(zài)上(shàng)面開發的(de)體驗。


來(lái)源:oschina