【记录】在 github 上搭建网站的详细步骤


设置分配很简单,只要为root设置一个root密码就行了: $ sudo passwd root

之后会提示要输入root用户的密码,连续输入root密码,再使用:$ su

就可以切换成超级管理员用户登陆了

在ubuntn下调出终端。

一、开始前先更新下,然后安装 ruby【目前我用是2.3.1版本】

sudo apt-get update

apt install ruby

二、上一步操作完了后,通过 ruby -v 查看发现显示的是 ruby 2.3.1版本

三、更改默认的sources源
 鉴于官方源无法访问,所以我们得更换为可以使用的源,这里推荐使用
ruby china源,大致步骤如下

  • 先键入命令gem sources 查看当前已经添加的源(默认应该是同时有官方源和淘宝源)
  • 然后通过 gem sources --remove https://rubygems.org/ gem sources -r https://ruby.taobao.org/ 分别移除官方源和淘宝源 (注意,请对比实际,移除自己已经添加的源即可,可以改为自己上一步中查询出来的地址)
  • 通过 gem sources -a http://gems.ruby-china.org 添加了ruby china的可用源
  • 修改来源后可以通过gem sources -l查看是否正确修改

Jekyll安装测试

安装参考: http://jekyll.com.cn/docs/installation/

$ gem install jekyll bundler

 

给文章页面添加多说评论(多说已挂)

注册 多说 账号,得到short_name (如图,robotkang就是我的shortname

首先按照如下格式编辑 _config.yml

comments :

  provider : duoshuo

  duoshuo :

    short_name : havee

 

2,将生成的多说代码复制,找到仓库的_layouts文件夹下的post.html文档,使用代码编辑器打开,将多说代码粘贴到 { { content } },</div> 的下面,对了,请养成随时Ctrl+S进行文档编辑保存的习惯

这段代码有4个地方要填

  • data-thread-key填上{{ page.id }}
  • data-title 填上 {{ page.title }}
  • data-url 填上 your web site/{{ page.url }}
  • short_name 注册多说账号的时候让你填的二级短域名

 

网址填上你自己的域名,当然也要写到CNAME文件中

 

 

本地调试的指令:jekyll serve

如遇错误,则运行:bundle exec Jekyll serve

给博客设置浏览量:

详情参考:  http://ibruce.info/2015/04/04/busuanzi/

 

LinuxUbuntn)下如何将本地项目pushgithub仓库

 

  1. 在终端里进入到所上传的目录下

在部署我的网站的时候查阅了很多资料,发现很多都是不太全面的,以下是集各家之长所写,希望对后来人有所帮助。

完成此项工作一共分以下几步:

  1. 在Ubuntu终端里安装git管理工具。

安装指令:sudo apt-get install git  查看版本:git –-version

  1. 在github上注册账户,官网地址[github官网](https://github.com), 注册登录后进入setting, 点击进入 ssh keys, 然后add ssh;
  2. 由于你的本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以,需要一点设置:

      第1步:创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:指令:ssh-keygen -t rsa -C [email protected]

      你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。

   Linux可以直接在终端里打开文件,指令:xdg-open id_rsa.pub (利用这个命令,在终端下打开文件就方便多了,比如用默认的pdf 阅读器打开一个pdf文件:xdg-open xxx.pdf)

第2步:登陆GitHub,打开“Account settings”,“SSH Keys”页面,然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容:

点“Add Key”,你就应该看到已经添加的Key:

为什么GitHub需要SSH Key呢?因为GitHub需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而Git支持SSH协议,所以,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送。

当然,GitHub允许你添加多个Key。假定你有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电脑的Key都添加到GitHub,就可以在每台电脑上往GitHub推送了。

最后友情提示,在GitHub上免费托管的Git仓库,任何人都可以看到喔(但只有你自己才能改)。所以,不要把敏感信息放进去。
4. 之后在github上新建一个仓库(建好的同学请忽略此步)

然后将仓库的链接地址copy一下,待用

  1. 在终端里进入到本地要push到github的项目的根目录;(比如说,我就是要把robotkang.Github.io这个文件夹上传到github上)

7. 执行 git init命令, 在根目录得到一个隐藏的 .git文件夹, 本地仓库初始化成功;

8. 执行 git add . 命令, 将目录添加到索引;

9. 执行 git commit -m "这里填写提交的说明信息"

10. 执行 git remote add origin '此处是刚才复制的github仓库的url'(注:命令中无此单引号); https://github.com/MengZheK/kangblog.github.io.git

 

此步如报错,解决办法如下:

      先输入$ git remote rm origin再输入$ git remote add origin 此处是刚才复制的github仓库的url就不会报错了!

11. 执行 git push -u origin master等待结束,提交成功;

密码是:

12. 若11步执行不成功, 则执行 git push -u origin master --force, 即可。

 

克隆仓库到本地

请确保本地安装了git客户端,克隆你的username.github.com仓库到本地。

git clone https://github.com/username/username.github.com.git

 

 

我们要绑定的话需要在username.github.com目录下增加一个CNAME文件。
在里面添加你的域名,假设为example.com,然后推送CNAME文件到远程仓库:

git add CNAME

git push origin master

  1. 在终端里ping你的github上仓库的域名,得到一个IP;
  2. 到域名服务商解析你的域名

3、登录http://github.com>进入项目>Settings>Custom domain>输入你的域名>Save。
 

 

 

首先看一下Jekyll的项目目录


还是简要介绍一下各个目录的用途。

    • .git git版本控制器
    • CNAME GitHub Pages自定义域名用的
    • _config.yml Jekyll配置文件
    • _includes 包含文件的,比如说网页的Header,Footer等重复利用文件
    • _layouts 网页HTML文件
    • _posts 你的文章(markdown格式)
    • _site 生成的文章html文档
    • assert 文档目录,比如存放首页LOGO、图片等
    • css 样式表
    • index.html 首页文档,当然也可以添加About、Tag等页面

 

 

 

 

 

 

 

PS:可能的错误以及解决

问题1:Installing Jekyll: ERROR: Failed to build gem native extension.

解决:you are missing the ruby-dev package, try installing it with sudo apt-get install ruby-dev

 

 

问题2:

 Dependency Error: Yikes! It looks like you don't have bundler or one of its de

pendencies installed. In order to use Jekyll as currently configured, you'll nee

d to install this gem. The full error message from Ruby is: 'cannot load such fi

le -- bundler' If you run into trouble, you can find helpful resources at http:/

/jekyllrb.com/help/!

jekyll 3.3.0 | Error:  bundler

解决:这个提示告诉我们没有安装bundler,很简单,我们在命令行中输入gem install bundler进行安装即可。

 

问题3:

https://img-blog.csdn.net/20170228153537298?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcm9ib3RrYW5n/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

解决:$ gem install minima jekyll-feed

 

 

问题4

表示 当前的 jekyll 版本是 3.1.1 ,无法使用 jekyll-sitemap

解决方法有两个

1、打开当前目录下的 _config.yml 文件,把 gems: [jekyll-paginate,jekyll-sitemap] 换成 gems: [jekyll-paginate] ,也就是去掉jekyll-sitemap。

2、升级 jekyll 版本,我当前的是 jekyll 3.1.2 。

 

 

 

 

最后,我想说的是:

没有十全十美的教程,如同不存在彻头彻尾的绝望(改自村上春树语)

重要的是保持住一颗捣腾不安的心以及对知识的渴望与寻找 .....

 

猜你喜欢

转载自blog.csdn.net/robotkang/article/details/81102575