我有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.