原始碼控制連線失敗錯誤

描述問題/錯誤/問題

嗨各位,

升級到 2.20.6 版本後,我開始看到這個錯誤訊息。你們有任何想法知道如何修復嗎?

提前謝謝

歡迎 @Gonzalo_Romero_Herna

請分享您的工作流程並指出錯誤發生在哪個節點

感謝 @kjooleng !! 實際上只要重新整理我的畫布就會發生!不需要執行工作流程來觸發這個錯誤!

您好,

如果您能分享確切的錯誤訊息或截圖會很有幫助。由於問題是在升級到版本 2.20.6 之後才出現,可能與該版本引入的配置變更、依賴項不匹配或相容性問題有關。

另外,如果能提及:

  • 您的作業系統,

  • 部署方法,

  • 以及升級是乾淨安裝還是就地升級

將能更容易地幫助他人對問題進行故障排除。

謝謝!

你能在錯誤出現後立即檢查 n8n 容器的日誌嗎?運行 docker logs n8n --tail 50 並分享錯誤行 - 「Source control failed to connect」通常是 SSH 金鑰被拒或 Git URL 格式不匹配導致的。另外請確認:你在設定 > Source Control 中新增的 SSH 公開金鑰是否仍然正確地部署在你的 GitHub/GitLab 儲存庫的部署金鑰中?在升級後,儲存在 n8n 設定中的金鑰有時需要重新儲存。

@David_Warner,非常感謝你的回應,實際上我是直接從 UI 上看到這個錯誤,就像我在截圖中分享的那樣。不過我也注意到每次觸發錯誤時,瀏覽器開發者工具中都會出現這個錯誤:


我使用的是部署到 ECS Fargate 的自託管實例
非常感謝你

@nguyenthieutoan,感謝你的留言!這很有趣!!事實上我忘記提到我也將我的授權從社群版升級到商業版。不確定是否相關,但可能有關。到目前為止我還沒有設定任何 SSH 配置 :thinking:!!!

這實際上說明了很多問題 - 如果沒有設定 SSH 金鑰,n8n 無法對 Git 儲存庫進行身份驗證,所以原始碼控制功能會在任何連線嘗試時立即失敗。前往 Settings > Source Control > SSH Key 並點擊「Generate」來建立新的 ED25519 金鑰對。n8n 會顯示你的公鑰 - 複製它並將其新增為你的 GitHub/GitLab 儲存庫中的部署金鑰(Settings > Deploy Keys)。然後將你儲存庫的 SSH URL(而非 HTTPS)貼入「Repository URL」欄位。升級至 Business 授權不應該造成這個問題,但請務必在升級後重新連線,因為原始碼控制設定可能會重設。

太棒了 @nguyenthieutoan !!我打算用那種方式來做!考慮到這個問題,n8n 預設會自動嘗試對 Git 進行身份驗證嗎?

是的 - n8n 會使用您在原始碼控制設定中配置的 SSH 金鑰,在每次拉取/推送時自動進行身份驗證。它不會在執行時提示您輸入認證資訊。如果您想從 n8n 進行推送,需要將該金鑰新增到您的 Git 提供者(GitHub、GitLab 等)作為具有寫入存取權限的部署金鑰。如果金鑰是唯讀的(部署金鑰不具有寫入存取權限),拉取會成功但推送會失敗。