啟用Gitea Server的SSH服務,可大幅增加連線速度

如我在《[Windows] 用Gitea架設自用的Git Server》一文所述,我們使用了Gitea來架設自己使用的Git Server,原本為了方便直接使用HTTP網址來複製儲存庫,但比較大的儲存經常都要同步很久(例如420MB的儲存庫需要費時18分鐘),只好看文件再摸索著把SSH服務啟動起來,試看看SSH會否速度較快。果然,改用SSH後同一個儲存庫只要約兩分鐘就完成了!速度實在差太多了。以下是在Gitea裡啟用SSH的步驟。

產生SSH金鑰

在Git Server上以下列指令產生SSH的金鑰:

cd /d c:\git安裝目錄\usr\bin
ssh-keygen -t rsa -b 4096 -C "你的電郵@???.com"

ssh-keygen

files

執行ssh-keygen時需要輸入通行碼(Passphrase),必須記起來。私用金鑰與公用金鑰會一起產生到C:\Users\Administrator.ssh\id_rsa資料夾裡,檔名分別是id_rsa(私鑰)與id_rsa.pub(公鑰)。

設定Gitea

  1. 啟用SSH服務

修改Gitea的設定檔以啟用SSH服務,編輯 \Gitea安裝目錄\custom\conf\app.ini,加上下列設定:

[server]
...
START_SSH_SERVER = true

設定好後必須重啟Gitea Server。

  1. 設定金鑰

瀏覽Gitea網站,由【用戶設定】→【SSH / GPG 金鑰】設定公鑰,在【管理 SSH 金鑰】頁面按【增加金鑰】,指定金鑰名稱,再於【金鑰內容】貼入公鑰檔id_rsa.pub的內容:

ssh key

增加金鑰成功後會再顯示提示訊息:
created message

到此主機端的設定就完成了。

Git client連線設定

在此以SmartGit當做Git client。遠端儲存庫第一次以 ssh:// 連線時會需要提供SSH client的連線資訊。

▼ 輸入儲存庫網址

smartgit-url

▼ 指定SSH私鑰檔案與通行碼後按〔Login〕。

private key

▼ 複製儲存庫的速度可達 4~6 MiB/s,HTTP則頂多100KiB/s~300KiB/s。

speed

##

您可能也會有興趣的類似文章

簡睿

服務於軟體業的資訊老兵。興趣廣泛,學習力佳,樂於分享所知所學。

您可能也會喜歡…

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *