知识库

与您的 GitHub 仓库进行双向同步

您对网站所做的修改会转化为您自己的代码库中的提交,您推送到那里的内容将会部署到您的网站上。这是免费的,以下是双方同时发生更改时的处理方式。

将您自己的 GitHub 账号连接到站点,我们将使两端保持双向同步。它是免费的,在您手动开启之前处于关闭状态,而且我们仅会向您拥有账号的仓库中进行提交——绝不会提交到我们的仓库中。

哪些内容会被同步

无论您通过何种方式更改站点文件,这些更改都会在您的仓库中变成一次提交:文件管理器、SFTP、WordPress 主题编辑器或 SSH 会话。您无需通知我们——我们会将您的站点与上一次提交进行对比并推送差异。

反过来,向您连接的分支进行推送也会同步到站点上。

哪些内容绝不会被提交

您的 wp-config.php 文件将被故意且永久地排除在外。它保存了您的数据库密码和身份验证盐值,这些内容不属于仓库——即使是私有仓库也不行,因为 git 会永久保留历史记录。

同样被排除的有:.env 文件、密钥和证书、您的上传文件夹、缓存以及 node_modules仓库是您站点的源码,而不是备份。 媒体文件属于您的备份(它们已经在那里妥善保存了),如果放到这里,会导致每次推送变慢且每次更改无法阅读。

如果双方都进行了更改会发生什么

这是最值得阅读的问题。假设您在文件管理器中编辑了一个文件,同时同事向同一个仓库推送了更改。

我们将会暂停。我们不会合并,也不会覆盖任何人。 站点的“部署”标签页会显示 “您的仓库有我们未见过的更改”,列出您需要查看的提交,然后等待您的操作。在等待期间,双方都不会丢失任何内容——您的编辑仍然在站点上,他们的提交也仍然在仓库中。

然后您进行选择:

  • 保留此站点的文件——我们将您的版本覆盖在他们的版本之上。他们的提交会保留在历史记录中;没有任何内容被擦除。
  • 使用仓库,放弃站点更改——将仓库的版本应用到站点,并丢弃您在此处做出的更改。此操作具有破坏性,这就是为什么它需要您刻意点击,而绝不是我们代为执行的操作。

出于设计考虑,这里没有“自动合并”选项。由我们执行的合并会在您双方都未先看到的情况下,在实时站点上生成一个你们两人都没有编写过的文件。

同步可能会停止的原因

  • 您尚未连接自己的 GitHub 账号。 在您连接之前,开关将保持关闭状态。
  • 正在等待您的操作。 见上文——暂停状态不会自动解除。
  • 您的账号状态不正常。 账单结清后,同步会自动暂停并恢复。没有任何内容会丢失。

“部署”标签页会显示最近的几次同步,包括没有任何更改的同步。如果该列表为空且同步已开启,则连接的账号很可能对该仓库没有写入权限——请检查其访问权限并重新连接。

选择同步内容

默认情况下会同步整个站点。对于 WordPress 站点,这通常不是您想要的:这意味着会同步 WordPress 核心的所有文件,而这些文件并非您编写且您也不会对其进行编辑。将 “仅同步此文件夹” 设置为您的主题(例如 wp-content/themes/my-theme),其余内容则保持不变。

还是没头绪?

每个套餐均包含支持服务,并支持使用您的母语进行解答。

联系客服 所有文章
与您的 GitHub 仓库进行双向同步