【发布时间】:2013-07-23 03:08:51
【问题描述】:
我正在尝试按照说明 http://jekyllrb.com/docs/deployment-methods/ 为 Jekyll 部署设置 git post-receive 挂钩,但是,我发现它们对我来说有点密集。在那个链接上,有一段说
每次推送时让远程服务器为您处理部署 使用 Git 进行更改,您可以创建一个用户帐户,其中包含所有 授权在其 authorized_keys 文件中部署的公钥。 有了这些,设置接收后挂钩就完成了 如下:
问题 1:我不清楚应该在哪里创建“用户帐户”(在 Github 上?在远程服务器上),以及(问题 2)这个 authorized_keys 文件应该在哪里。我在本地计算机上的主目录中有一个known_hosts 文件,其中包含 github 等的密钥。这是 authorized_keys 文件吗?
接下来的说明会告诉你像这样设置一个接收后挂钩
laptop$ ssh deployer@myserver.com
server$ mkdir myrepo.git
server$ cd myrepo.git
server$ git --bare init
server$ cp hooks/post-receive.sample hooks/post-receive
server$ mkdir /var/www/myrepo
指令mkdir myrepo.git 对我来说有点不清楚。例如,我将 Jekyll 站点放入本地机器上的 git 版本控制中,它给了我这个路径 /Users/me/Sites/nginxjekyll/_site/.git/
问题 3) 那么,这是否意味着,按照 mkdir myrepo.git 指令,我应该在我的远程服务器上创建一个目录 mkdir /Users/me/Sites/nginxjekyll/_site/.git/?继续前进,它说,
cp hooks/post-receive.sample hooks/post-receive
但是,我没有要复制的hooks/post-receive.sample 文件?在我本地机器上的 git 存储库中,我有一个 post-update.sample 但没有 post-receive.sample。此外,当我在远程服务器上创建目录 mkdir /Users/me/Sites/nginxjekyll/_site/.git/ 时,它没有在其中创建 post-update.sample 文件。
如果您有时间,能否帮我解释一下这些说明。先感谢您。
【问题讨论】: