Git尚未準備好應對AI代碼海嘯
AI生成的代碼和拉取請求激增,導致GitHub等服務頻繁中斷、性能下降。HashiCorp聯合創始人Mitchell Hashimoto因不滿而遷移項目。專家們探討了多種解決方案,包括新型Git客户端、去中心化系統以及Git 3.0的改進。
Git作為全球最流行的分佈式版本控制系統,正面臨前所未有的挑戰。隨着AI編碼工具的普及,大量由AI生成的代碼和拉取請求湧入,導致GitHub等服務不堪重負。上個月,HashiCorp聯合創始人Mitchell Hashimoto公開宣佈將其開源項目Ghostty終端模擬器從GitHub遷移,理由是頻繁的服務中斷和越來越慢的拉取請求響應。他明確表示問題不在Git本身,而在於圍繞Git的生態設施如問題跟蹤、拉取請求和Actions。
2025年,GitHub上AI生成的項目數量同比增長206%(以Bash腳本使用量衡量),而AI生成的代碼帶來了更多錯誤。GitClear的研究顯示,AI生成的拉取請求平均引入10.83個問題,而人工編寫的僅為6.45個。DevOps平台Autoptic的聯合創始人Peco Karayanev指出,AI代理正推動軟件開發向持續流模式轉變,但Git的操作(如提交、推送、合併)仍依賴手動觸發,難以適應自動化需求。
針對這些問題,多個項目試圖改進或替代Git。GitButler通過虛擬分支技術允許開發者同時在不同分支上工作,並解決“變基地獄”問題。其聯合創始人Scott Chacon認為,Git的可用性存在“尖鋭的邊緣”,而GitButler旨在重新設計Git的“瓷層”。Chacon還指出,GitHub的問題源於所有用户集中於單一服務,他建議分佈式使用Git,並通過客户端(如GitButler)進行全局鏡像管理。
更根本的變革則來自Diversion,該公司開發了專為大型遊戲設計的新型分佈式版本控制系統。CEO Sasha Medvedovsky批評Git的架構本質上限制規模擴展,因為操作在單線程上運行,無法併發,導致倉庫越大提交越慢。此外,Jujutsu項目提供了一個Git兼容的版本控制系統,具備撤銷功能和衝突時繼續提交的能力;Gitoxide則使用Rust重寫Git,旨在提升性能和內存安全性。
Git本身也在進化。在FOSDEM 2026上,核心貢獻者Patrick Steinhardt透露了Git 3.0的改進,重點是Reftable特性。當前Git使用“packed-refs”文件管理引用,隨着項目增大,該文件的讀寫變得極其低效。Reftable採用可索引的二進制格式,支持塊更新,大幅提升性能,尤其適合多讀者多寫者場景。這一改進將幫助Git應對AI代理帶來的海量提交。
面對AI編碼浪潮,Git能否保持其核心地位?從新型客户端到底層重構,再到協議改進,社區正從多個方向探索出路。雖然挑戰嚴峻,但Git的靈活性和廣泛生態為其提供了緩衝空間。正如Chacon所言,所有工作流都已改變,系統也應隨之變革。