使用github的pages服务创建项目主页的注意事项

以前我对github的pages服务的使用一直只停留在创建博客而已,最近整理了上面的几个repo才使用了其创建项目主页功能。整体来说仍是很方便的,各位看看官方文档便可大体了解。而接下来我再说说期间遇到的一些问题和解决:git

确保你的username.github.io不会跳到别的站点

首先github的pages服务给每一个用户只分配了一个域名username.github.io;你也能够添加CNAME记录使其指向你本身其余域名,pages服务会为你自动跳转。而每一个项目的gh-pages分支下其项目主页默认却只是<username>.github.io/<projectname>CNAME记录指向的其余域名/<projectname>,就不能再本身设置域名了。因此这里千万要注意用户域名username.github.io的CNAME记录别跳到别的站上去,不然不能访问到各个项目的gh-pages分支。github

因为我博客使用双repo同时在github和gitcafe上部署,为保证国内访问,levonlin.github.io的CNAME中,域名levonlin.info的CNAME记录值被我设为gitcafe.io,结果就致使创建的项目主页一直404。若是你和我同样的状况,那要么删除username.github.io的CNAME,要么保证CNAME指向的域名不会跳到别的站上,这样才能愉快地使用pages服务。fetch

解决gh-pages分支clone到本地后出现push冲突

这就得理解git的工做原理了,local repo和remote repo上两个分支得如今有或者merge之前有相同的"base"才能用push实现local repo上branch的上传,以下图:spa

85ad0d9cgw1esqtsf76xoj20ko0camyb.jpg

clone下来后保持同步

在github建立gh-pages后,因为clone到local repo上的只有master分支,而master分支与gh-pages分支的初始状态并不一样步。能够先fetch一次gh-pages再checkout到它上面commit,就能实现正常push:3d

85ad0d9cgw1esqtth7lfzj20ia08kwfa.jpg

85ad0d9cgw1esqtw0e5y9j20k4084gmf.jpg

85ad0d9cgw1esqtwe1345j20kk09rgmg.jpg

自建的分支保持同步

此外若是你在本地自建了gh-pages分支,则要再checkout到它上面pull后commit,即可以push啦:
85ad0d9cgw1esqtwv14ikj20hz09awfc.jpgcode

85ad0d9cgw1esqtx54i5tj20kz0ahq3y.jpg

85ad0d9cgw1esqtxdpn1rj20le0cf3zn.jpg

相关文章
相关标签/搜索