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