我如何使用 Git/GitHub 将 discord.js 机器人部署到远程服务器(我拥有并在我的网络上)而无需手动 FTP 到它

How can I use Git/GitHub to deploy a discord.js bot to a remote server (that I own and is on my network) without having to manually FTP into it

所以我开发了 Discord.JS 机器人,并将它们托管在我家里的服务器上。我通常在我的个人设备上对它们进行编程和测试,但将它们托管在专用设备上。问题是,为了让我进行更新,我必须手动 FTP 进入此设备以编辑文件。

我对这些项目使用GitHub 和Git,并且我有一个开发分支和一个生产分支。我想知道是否有可能使这个过程自动化;当我推送到生产分支时,它会为我更新服务器上的文件。

请记住,我对 GitHub 还是半陌生的,所以如果它很简单,我深表歉意。有没有这方面的软件,或者可以通过 Git 来完成?谢谢! :)

正如@eftshift0 在他们的评论中提到的,您可以使用 cronjob 和 git 克隆。

为此,您需要编辑 crontab 文件,使用 crontab -e 命令。

在文件底部,插入:

frequency    git clone https://<github_username>:<url_encoded_github_password>@github.com/<github_username>/<repo_name> /path/to/directory

frequency 应该类似于 * * * * *。你可以找到你需要的东西here。这将是进行更新的时间间隔。

要url编码你的密码,你可以使用this

编辑:

如@eftshift0 所述,您还可以创建一个 bash 文件,然后 运行 来自 crontab 的文件。

文件将包含:

#!/bin/bash

cd /path/to/

git clone https://<github_username>:<url_encoded_github_password>@github.com/<github_username>/<repo_name>

您的回购将在 /path/to/

crontab -e 中,您必须附加:

frequency    /bin/sh /path/to/file.sh