Bash 脚本以从私有 Git 存储库推送/拉取



我正在尝试找到一种方法来编写一个bash脚本,该脚本将在每个午夜自动从我们的私有Github存储库中提取并更新我们的开发站点。

出于显而易见的原因,我们的回购是私有的,我发现的任何接近的东西总是要求提供密码。我们的服务器有自己的 Github 帐户,用于从存储库推送和拉取,但我只是不知道如何自动执行此操作。

谁能指出我正确的方向?

为了自动执行推送/拉取,您需要设置无密码身份验证。为此,您可以使用 ssh(而不是 https(。如果你之前没有在github上使用过ssh,或者根本没有使用过,那么你需要执行几个步骤来配置。

在计算机上,生成一个 ssh 密钥:

$ ssh-keygen -t rsa

确保将密码字段留空。这使得本地私钥未加密,但对于互联网上的实际通信来说同样安全。

然后,将~/.ssh/id_rsa.pub上传到帐户设置 |固态路密钥

现在,您应该能够在没有密码的情况下从该计算机推送和拉取。试试看:

git clone git@github.com:user/repo.git

然后,您可以根据需要将这些命令放在 bash 脚本中。如果需要为多台计算机执行此操作,则需要上传每个密钥,或将私钥 (~/.ssh/id_rsa ( 复制到每台计算机。

有关详细信息,请参阅 github 帮助。另请查看部署密钥页,因为这可能会为你的情况提供更好的安全粒度。

最新更新