最近为 zhlistgh-pages 分支配置了个域名。仔细的阅读了这篇文章,终于搞清了 User PagesProject Pages 的区别。

  • User Pages 下,CNAME 是放置在 master 分支下。
  • Project Pages 下,CNAME 是放置在 gh-pages 分支下。

在同时拥有 User PagesProject Pages 情况下,//username.github.io/projectname 将不会转向到 Project Pagesgh-pages 分支下设置的域名。而会以 User Pagesmaster 分支下设置的域名,加上 /projectname 路径来体现。

譬如:

  1. zhlist/zhlist.github.iomaster 分支配置域名 zhlist.org
  2. zhlist/projectgh-pages 分支同时配置域名 www.zhlist.org

zhlist/project 的访问 URL 则为 //zhlist.org/project,而不会是 //www.zhlist.org

也就是说,在没有 username.github.io 这个 User Pages 情况下,你可以为你的 Project Pages 1Project Pages 2Project Pages 3...... 配置不同的域名。

一旦建立 username.github.io,则其他所有的 Project Pages 只能通过 //username.github.io/projectname 来访问了。当然所有的前提是,username.github.io 存在 master 分支,Project 存在 gh-pages 分支。