GitHub 替代方案:管理垃圾與 AI 生成的拉取請求
開發者正日益遷移專案遠離 GitHub,以逃離激增的垃圾拉取請求(PR)與機器人驅動的活動,這些活動旨在人為地提升使用者檔案。此遷移的主要驅動因素是「vibe coders」的氾濫以及缺乏真正技術價值的 AI 生成貢獻,讓維護者難以從噪音中篩選出訊號。
開源託管的主要替代平台
幾個社群驅動的平台已成為尋求更專注開源開發環境的使用者的可行替代方案。
Codeberg
Codeberg 常被視為強而有力的替代方案,特別是對於優先考慮開源價值的使用者。它由歐洲機構贊助,僅託管開源軟體。部分使用者指出,高知名度的專案(例如 Zig)已使用此平台。
Sourcehut
Sourcehut 推薦給偏好精簡、專注開發方式的開發者。使用者強調它致力於對抗 LLM 抓取工具,且具開源特性,可自行託管。雖然介面可能與傳統 forge 不同,但其 CI/CD 功能備受讚譽。
自行託管與私有基礎設施
對於希望完全掌控環境,並徹底移除類似社群媒體噪音的開發者而言,自行託管是首要建議。
Forgejo 與 Gitea
Forgejo(Gitea 的分支)目前在自行託管領域相當受歡迎。它在使用者掌控的伺服器上提供完整的 forge 體驗。Gitea 亦被推薦用於管理私有專案與備份公開專案。
簡約 Git 託管
部分開發者主張回歸 Git 的基本概念。由於 Git 倉庫即為專案的完整副本,可在任何具備 SSH Shell 存取的伺服器上託管。像 gitolite 這類工具已被使用數十年,以管理小團隊的存取權限。若僅需唯讀的程式碼分享,建議在 VPS 上使用 cgit,作為輕量且抗抓取的方案。
家用伺服器整合
使用 Synology NAS 或類似的家用伺服器,透過 Tailscale 或 VPN 連線,讓開發者能維持私有的「真實來源」程式碼,且不必將其暴露於公共網路。
減少現有平台垃圾的策略
遷移平台並不一定能解決垃圾問題,因為任何接受未驗證拉取請求的平台都容易受到機器人攻擊。開發者建議多項工作流程變更以減輕此情況:
- 停用公開 PR 與 Issue: GitHub 允許使用者完全停用 Pull Request 與 Issue。部分人建議僅對維護者以外的所有人停用。
- 「請願」模式: 與其允許開放 PR,維護者可使用討論板。貢獻者必須先請願以開發功能,並說服維護者其價值。獲批後,維護者可從貢獻者的分支拉取並手動合併變更。
- 限制存取: 對特定使用者或新帳號實施封鎖,可減少噪音量。
社群對程式碼「社交」層面的觀點
雖然遷移至較小的平台能減少垃圾,但也可能縮小社群觸及的範圍。討論中的原發帖者強調,目標不僅是避免垃圾,而是尋找一群「關心軟體並願意在錯誤回報與安全回報中投入真誠想法」的社群。這凸顯了對高品質、專注社群的渴望與大眾平台廣泛觸及之間的張力。