此功能由 ayaka-notes/ayakaleaf-pro 开发,并由 yu-i-i/overleaf-cep 修改。它自 v6.2.0 起引入,目前仍处于 beta 阶段。如果你遇到任何问题,我们需要你的反馈。




设置 GitHub 同步
访问 developers settings 创建你的 GitHub OAuth 应用,并复制CLIENT_ID 和 SECRET。
注意:你的 OAuth 回调 URL 为:${OVERLEAF_SITE_URL}/user/github-sync/oauth2/callback。
然后,将以下设置添加到你的 Overleaf 环境变量文件中。
config/variables.env
GITHUB_SYNC_PROXY_URL=http://10.0.0.1:10808。请确保你使用代理的行为符合当地法律法规。
GitHub Enterprise
GitHub Enterprise 支持自 v6.3.1 起引入。更早的版本只能连接到
github.com,下列变量不起作用。github.com。如需使用 GitHub Enterprise Server(自托管)或具有数据驻留功能的 GitHub Enterprise Cloud(GHE.com),请将 GITHUB_SYNC_URL 设置为你的实例的网页地址,即你在浏览器中打开仓库时使用的地址。
config/variables.env
GITHUB_SYNC_URL 推导得出:
仅当你的实例在其他位置提供 API 端点(例如位于 API 网关之后)时,才需要设置这些端点:
如果你的实例使用由私有 CA 签发的证书,请将 CA 证书挂载到容器中,并将
NODE_EXTRA_CA_CERTS 指向它,例如 NODE_EXTRA_CA_CERTS=/var/lib/overleaf/certs/github-ca.pem。已关联的账户和项目属于其关联时所使用的实例。在将
GITHUB_SYNC_URL 切换到另一个实例之前,请让用户取消关联他们的 GitHub 账户和项目。谁可以关联和同步
与 Overleaf Cloud 一样,只有项目所有者才能将项目关联到 GitHub 仓库。关联完成后,每位拥有编辑权限的协作者都可以同步该项目。- Overleaf 使用执行同步的用户的 GitHub 账户与 GitHub 通信,因此每位执行同步的协作者都需要关联自己的 GitHub 账户,并且需要拥有向仓库默认分支推送的权限。
- 仅有查看权限的协作者无法对该项目使用 GitHub 同步。
Q&A
我可以强制推送到默认分支吗?
我可以强制推送到默认分支吗?
回答:我们不建议这样做。Overleaf 会检测到强制推送并发出警告,然后接管被重写的分支,合并自上次同步以来在 Overleaf 中所做的更改。为避免意外情况,请在仓库设置中保护默认分支,禁止强制推送。
我可以重命名已关联项目的默认分支吗?
我可以重命名已关联项目的默认分支吗?
回答:请不要这样做。Overleaf 会持续与项目关联时所使用的分支同步。如需与其他分支同步,请取消项目关联,然后将仓库导入为新项目,新项目将使用当前的默认分支。

