開啟 3 天免費試用
註冊即可免費體驗全部高級功能。
*只限新用戶;每位用戶只可獲得一次試用。


GitHub 在中國內地失敗時,先確定操作:開啟儲存庫、解析主機、登入、完成 SSO、呼叫 API,或透過 HTTPS、SSH 執行 clone、fetch、pull、push。各操作使用不同主機、協議、憑證和機構控制;網頁可開不代表推送成功,單次複製失敗也不證明平台處處不可用。
關鍵要點:
- 更改憑證、遠端或代理前,先保存提交、修補檔和未追蹤檔案。
- 記錄指令、協議、主機、網絡、時間和錯誤,但須遮蓋權杖及儲存庫資料。
- 分開比較網頁、API、HTTPS Git 和 SSH Git,勿外推單一端點結果。
- 排查時保留 TLS 驗證、SSH 主機密鑰檢查、SSO 和機構政策。
本文不承諾任何地點或時段的可用性。公開旅遊建議指出中國內地的互聯網存取可能受限,實況隨服務、營運商、地點和時間變化。[1]通用排查見中國內地上網檢查清單;本文只談 GitHub 開發。
由一個你獲授權使用的儲存庫和一項非破壞性操作開始。不要以強制推送、刪除憑證或反覆觸發認證來測試。收集足以區分各層的細節。
| 檢查面 | 安全觀察 | 差異可能指向 |
|---|---|---|
| 公開網頁 | 完整載入、部分載入還是逾時? | 瀏覽器、DNS、TLS、CDN 或網絡路徑 |
| 登入後網頁 | 能否登入並開啟目標機構? | 身份供應商、MFA、SSO、工作階段或政策 |
| HTTPS Git | fetch 是否到達遠端後才拒絕憑證? | 傳輸已到達,下一步查認證或授權 |
| SSH Git | 是否在儲存庫授權前已連線失敗? | 連接埠、代理、主機驗證或 SSH 憑證 |
| API | 最小官方請求是否有 HTTP 回應? | API 主機、權杖範圍、速率限制或政策可能與網頁不同 |
| 另一儲存庫 | 獲准的公開或測試庫是否不同? | 體積、LFS、權限、鈎子或機構政策 |
GitHub 官方建議核對連線,僅在需要時使用最新 IP 資訊;如涉及防火牆、代理或機構網絡,應與管理員協作。[2]第三方鏡像或複製憑證不能充當診斷捷徑。
更改設定之前,先確認已提交的工作確實保存在本機,並把無法取代的未追蹤檔案複製到獲准的安全位置。記錄已移除秘密的儲存庫遠端位址、所做的操作(clone、fetch、pull、push、API 呼叫或瀏覽器載入)、協議、大約時間及完整錯誤文字。同時記下已安裝的 Git 版本,以及是否涉及 Git LFS、子模組、憑證助手或企業 SSO 流程。
只對你有權存取的儲存庫執行 git ls-remote 這類唯讀指令。不要快速連續重試:這會掩蓋時序、可能觸發速率或身份控制,亦令不同網絡之間更難比較。儲存庫若含敏感名稱,分享記錄前先遮蓋。
檢查 GitHub 公開頁面、登入頁、儲存庫頁及官方狀態頁是否以同樣方式失敗。瀏覽器擴充功能、快取工作階段、受管憑證、DNS 解析器或網絡登入頁,可能只影響瀏覽器而不影響命令列 Git,反之亦然。只有機構政策容許時才用一個私人視窗對照;在保存有用的工作階段及錯誤證據之前,不要清除全部瀏覽器資料。
按錯誤原意分類。域名解析失敗、TCP 逾時、TLS 憑證錯誤、代理回應、403、404、429 和 5xx 屬於不同層。不要略過憑證警告,也不要為了載入頁面而安裝無法核實的根憑證。
確認遠端使用預期的 https://github.com/OWNER/REPOSITORY.git 格式,並與 GitHub 官方文件中的複製流程對照。[3]如果連線已到達 GitHub 但認證失敗,檢查憑證方式、權杖範圍、權杖有效期、SSO 授權及儲存庫權限。在 Git 操作中,密碼認證不能取代受支援的憑證流程。
分別檢查儲存庫層、全域及系統層的 Git 代理設定,以及相關環境變數,過程中不要輸出秘密。過期的代理可能令瀏覽器正常而 Git 失敗。每次只改一個層級,並記下原本的值。不得設定 http.sslVerify=false、壓制憑證驗證或把憑證寫入遠端 URL。
確認遠端主機是預期的 GitHub 主機、客戶端提供的是正確密鑰,而且該密鑰連結到預期的帳戶或機構。主機密鑰驗證是一道安全界線:把觀察到的指紋與 GitHub 公佈的指紋比較,不一致便停止。不要整個刪除 known_hosts,也不要啟用寬鬆的主機檢查。
在個別網絡上,22 連接埠的表現可能與 HTTPS 不同。對於封鎖普通 SSH 的網絡,GitHub 文件提供了經 HTTPS 連接埠使用 SSH 的方案;請按官方設定操作,並在使用前核實備用主機密鑰。[4]這只改變傳輸路徑,不改變儲存庫權限、SSO、分支保護、簽署要求或機構政策。
把認證和授權分開看待。有效的帳戶工作階段或權杖仍可能無權存取儲存庫;機構可能要求 SAML SSO、IP 允許清單、獲批的 OAuth 應用程式、須經批准的細粒度權杖、受管用戶控制或指定的 SSH 憑證。私人儲存庫回傳 404,可能是刻意隱藏其存在。
進行 API 排查時,記錄主機、HTTP 狀態、速率限制標頭、權杖類型及所需範圍,但不要把權杖寫入記錄。只測試文件中最小的讀取操作。請機構擁有人或網絡管理員確認政策,而不是設法繞過。個人儲存庫的結果並不證明企業機構亦應表現一樣。
盤點瀏覽器代理設定、作業系統代理設定、Git 設定、SSH ProxyCommand 或 ProxyJump、容器或 IDE 設定,以及環境變數。不同層級互相衝突很常見:瀏覽器可能走一條路徑,而 Git、IDE 擴充功能或容器走另一條。只刪除或修改你能解釋的過期項目。
如當地法律與機構政策允許,可在一條受控替代路徑重複同一個非破壞性操作。VPN 可以改變網絡路由,但不能修復 GitHub 服務事故、授予儲存庫權限、完成 SSO、批准權杖或凌駕僱主控制。保持指令、帳戶、儲存庫與時間範圍一致,才可比較。如對照獲准,可用 AethoVPN 為同一個 git ls-remote 提供替代路由。
只採用經確認的最小修正:修復預期的代理、更新獲准的憑證、完成 SSO 授權、請管理員更新政策、使用 GitHub 官方的 SSH 替代連接埠,或等待已確認的服務事故完結。然後重複原操作並核對儲存庫狀態。推送須從獲准畫面確認遠端已有預期的提交,不能只看「沒有報錯」。
記錄哪些檢查面可用、哪些不可用,所用網絡和協議,最終的錯誤或結果,以及須還原的臨時改動。若仍沒有可用路徑,保留本機儲存庫,並協調獲准的交接、修補檔傳遞或稍後重試。不要把專有程式碼上載至公開儲存庫或非官方鏡像。
不要把不斷變化、取決於路徑的結果簡化為統一的是或否。應在目前網絡上測試具體獲准的網頁、Git 或 API 操作,並記錄日期、地點及端點。
瀏覽器與 Git 客戶端可能使用不同協議、代理設定、憑證、主機及機構控制。應把 HTTPS 或 SSH 傳輸與網頁分開排查。
不應該。TLS 錯誤可能源於攔截、時鐘錯誤、網絡登入頁、受管憑證問題或不安全路徑。應保留錯誤資料,並修復信任或路由問題。
可以,前提是儲存庫和機構支援,但切換只改變傳輸,不改變權限。須使用官方遠端格式及獲准的憑證方式。
只在獲准時使用 GitHub 官方 SSH 經 HTTPS 連接埠流程,核實官方指紋,並保持嚴格主機密鑰檢查。
機構可能要求 SSO 授權、獲批權杖、IP 控制、受管身份或不同權限。應由擁有人或管理員確認。
不保證。路由只是其中一層,服務狀態、憑證、SSO、權限、鈎子、分支保護與機構政策仍會決定結果。
免責聲明:本文提供一般操作資訊,不構成法律、安全、僱主政策或特定服務建議。請遵守適用法律、機構控制和 GitHub 最新官方文件。
Sources checked 2026 年 9 月 12 日。
延伸閱讀:
註冊即可免費體驗全部高級功能。
*只限新用戶;每位用戶只可獲得一次試用。