GitHub 工程團隊的開發(fā)環(huán)境遷移至 Codespaces
GitHub 官方宣布,負責(zé) github.com 的工程團隊已將開發(fā)環(huán)境遷移至 Codespaces。
GitHub.com 的代碼庫已誕生將近 14 年。當(dāng) github.com 的第一個 commit 被推送時,Rails 只有兩年的歷史,AWS 才誕生一年,Azure 和 GCP 尚未問世。在這 14 年里,GitHub.com 的核心倉庫 (github/github) 已收到超過一百萬次 commit,其中絕大部分來自于在 macOS 上構(gòu)建和測試的開發(fā)者。
GitHub 稱,他們的開發(fā)平臺在不斷發(fā)展,過去的幾個月里,工程團隊從 macOS 轉(zhuǎn)向使用 Codespaces 進行 github.com 的大部分開發(fā)。這對于工程師的日常開發(fā)流程是一個根本性的轉(zhuǎn)變。GitHub 認為此舉讓 Codespaces 變得更強大,他們也為 github.com 的未來發(fā)展做好了準備。
GitHub 表示,他們長期投入了大量時間和精力來為團隊打造一個“開箱即用”的本地開發(fā)環(huán)境,讓新員工可以迅速配置和運行 github.com 的本地實例。
但現(xiàn)實情況是,雖然付出了許多努力,這樣的開發(fā)環(huán)境卻依舊十分脆弱。任何看似無害的變更都可能會導(dǎo)致本地環(huán)境失效,更糟糕的是,這種情況往往需要數(shù)小時的寶貴開發(fā)時間來恢復(fù)。
考慮到工程師的開發(fā)環(huán)境各不相同,而且每個人都有自己習(xí)慣的特殊癖好。GitHub 被 Codespaces 啟發(fā),他們可以像對待基礎(chǔ)設(shè)施一樣對待開發(fā)環(huán)境,也就是說沒有什么是不可替換,或者不可或缺的,并且如果出現(xiàn)意外情況,可在已知的良好狀態(tài)下提供一個新的 Codespaces 然后重新開始工作。
GitHub 表示,遷移到 Codespaces 解決了現(xiàn)有開發(fā)環(huán)境中的缺點,激勵他們進一步推動改進產(chǎn)品,并提升了整體的開發(fā)體驗。雖然此次開發(fā)環(huán)境的遷移結(jié)局還算美好,但剛開始時還是頗具挑戰(zhàn)性。據(jù)介紹,GitHub.com 代碼庫在磁盤上大約使用了 13GB 空間。單是克隆倉庫大約需要 20 分鐘,再加上設(shè)置依賴項等,引導(dǎo) GitHub.com 的 Codespaces 會耗時 45 分鐘以上。
改變往往是十分困難的事,對于開發(fā)環(huán)境來說更是如此。GitHub 表示,他們此次遷移至 Codespaces 作為默認開發(fā)環(huán)境的舉動雖然遇到不少挑戰(zhàn),但對最后的結(jié)果十分滿意,未來會繼續(xù)優(yōu)化在上面開發(fā)的體驗。
本文轉(zhuǎn)自O(shè)SCHINA
本文標題:GitHub 工程團隊的開發(fā)環(huán)境遷移至 Codespaces
本文地址:https://www.oschina.net/news/154976/githubs-engineering-team-moved-codespaces