我在本地启动并运行了 jekyll 博客。我不确定如何将内容推送到 slicehost。他们有一个说明页面,但我无法按照说明进行操作。
我所有的内容都在 github 上。只需要知道如何使更新后挂钩工作?
要部署生成的 Jekyll 站点,您只需将本地_site
目录的内容复制到服务器上适当的远程目录(通常public_html
,但这取决于服务器配置)。
就个人而言,我认为最简单的方法是使用rsync
,假设您可以rsync
与您的服务器一起使用。然后就跟执行命令一样简单
$ rsync -avz --delete _site/ user@host:/path/to/web/root
部署您的网站。对于基于 Jekyll 的站点,我将其封装在 Rake 任务中,这样我就可以做到
$ rake site:deploy
将站点复制到服务器。
如果你不能使用rsync
,你总是可以_site
通过 FTP 传输目录,这也很容易做到(并且通过一些 Ruby 脚本,也可以使用 Rake 自动化)。
您可以使用 Git,如 Jekyll 文档中所述。你必须在你的服务器上安装 Git,并且可以使用它。如果是这种情况,您必须在服务器上创建一个裸 Git 存储库。然后在裸仓库中创建一个更新后挂钩来检查该站点的最新副本。为此,您可以创建一个脚本,$BARE_REPO/hooks/post-update
其内容如下(如此处所述):
#!/bin/sh
unset GIT_DIR && cd /path/to/web/root && git pull
然后,您将裸存储库克隆到您的 Web 根目录,如下所示:
$ cd /path/to/web/root
$ cd ..
$ rm -rf root
$ git clone /path/to/bare/repo.git root
如您所见,通常使用rsync
FTP 比使用 Git 更容易。