在github上建立Vimwiki

准备工作

建立Wiki

GitHub Pages种类

与GitHub建立好链接之后,就可以方便的使用它提供的Pages服务,GitHub Pages分两种:

User & Organization Pages

Project Pages

建立页面仓库

  1. 登录后系统,在github首页,点击页面右下角「New Repository」建立仓库;
  2. 填写如下项目信息,点击「Create Repository」完成创建。
    • project name:xstarcd.github.io
    • description:XStar's Wiki
  3. 注意:
    • Github Pages的Repository名字是特定的,比如我Github账号是xstarcd,那么我Github Pages Repository名字就是xstarcd.github.io
    • Wiki或Blog:branch设置为:master
    • 项目页面:branch设置为:gh-pages

创建页面

使用git发布Wiki

Vimwiki是在本地用Vim进行Wiki编辑和页面生成,将Vimwiki生成目录做为git仓库来push到GitHub中,即可达到Wiki发布的目的。

# 从github clone到本地
git clone git@github.com:xstarcd/xstarcd.github.io.git
git branch  # 查看分支列表
git pull    # 更新本地仓库至最新更新
git checkout master # 切换至master分支

# 设置本地git配置
git config user.email 'xstarcd@users.noreply.github.com'
git config user.name 'xstarcd'
git config push.default simple
git config -l
#git config -e  # 直接编辑配置文件
# git config --global --unset credential.helper #删除设置

# 更新README.md到本地仓库
cat >README.md <<EOF
# XStar's Wiki 
## http://xstarcd.github.io/
## http://w.gdu.me/
EOF
git add README.md

# 将建立wiki子目录,将Vimwiki html生成目录指向wiki子目录(设置方式见Vimwiki说明),并执行页面生成
# ...
# 将wiki子目录添加至本地仓库
#git add *
git add wiki

# 提交至本地仓库
git commit -m 'first commit'

# 查看状态和变更
git status

# 推送更新到github
# git push -u origin master
git push 

# 查看日志,添加tag
git log
git tag 1.0.0 <提交ID前10位字符> # 创建一个1.0.0的标签

完成即可使用 http://xstarcd.github.io/wiki/ 来访问Wiki。

绑定自定义域名

类型 GitHub主机地址 重定向规则 自定义域名范例
User Pages site username.github.io 自动重定向到CNAME中设置的自定义域名 user.example.com
Organization Pages site orgname.github.io org.example.com
Project Pages site owned by a user account username.github.io/projectname 自动重定向到含子路径的、User Pages site指定的自定义域名:user.example.com/projectname project.example.com
Project Pages site owned by an organization orgname.github.io/projectname 自动重定向到含子路径的、Project Pages site指定的自定义域名:org.example.com/projectname project.example.com

atmos.github.io仓库的CNAME文件中设置为:www.atmos.com

  1. User Pages站点: atmos.github.io -> www.atmos.org
  2. Project Pages站点: atmos.github.io/warden-github -> www.atmos.org/warden-github
  3. 注意:Project Pages站点继承所有者的User Pages站点的域名

emoji仓库CNAME设置为emoji.muan.co,所有者为muan,其User Pages仓库CNAME设置为muan.co

其Project Pages站点muan.github.io/emoji重定向到muan.co/emoji,并且emoji.muan.co也可用。

其它

git.conf内容

[core]
        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true
        ignorecase = true
[user]
        email = xstarcd@users.noreply.github.com
        name = xstarcd
[remote "origin"]
        url = git@github.com:xstarcd/github.io.git
        fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
        remote = origin
        merge = refs/heads/master
[color]
        ui = true

设置密码缓存

如果使用https方式clone仓库,每次push时均需求输入用户名和密码,可使用credential helper记录、并自动告诉GitHub用户名和密码(需要Git 1.7.10以上版本)。

git config --global credential.helper wincred
# 测试使用wincred没有效果,第二次pull还是提示输入username,password。
# 改用store有效。

保存位存:~/.git-credentials

Jekyll