使用 Deploy key 将私有 GitHub 仓库克隆到境内服务器

由于某些原因,我们往往无法直接在境内服务器上克隆 GitHub 上的仓库。对于公开仓库,我们可以通过公益或自建的反向代理来解决这个问题。但是当我们希望将仓库保持私有时,我们遇到了以下几个问题:

  1. 我们不希望将自己的凭据上传到服务器,因此需要使用权限较低的 personal access token
  2. 很多反向代理方式,尤其是公益的,并不支持传递 personal access token
  3. 在服务器上使用 personal access token 配合反向代理进行 HTTPS clone 将会向反向代理服务器暴露该 token

本文将通过转发 GitHub 的 SSH 端口并使用 Deploy key 来解决这些问题。使用该方案,服务器上的凭据将仅限于读取指定仓库,且中间人无法获得你的凭据。

阅读更多