如何用Github的gh-pages分支展示自己的项目
很多新同学觉得github不就是一个代码托管所吗,如何能展示项目呢?其实完全可以借助Github的gh-pages打造出自己的一个作品集,无论是对自己的提升整合还是日后的面试都大有裨益。
前置准备
Github创建项目仓库后随即只产生一个master分支,只需要再添加gh-pages
分支就可以创建静态页面了。这利用了项目站点(即Project Pages)的方式。还有一种创建站点的方式叫做User/Organization Pages。下面介绍前者。
首先,创建一个名为 Github用户名.github.io 的仓库。
接着大家可以在这仓库里放一些静态页面,在外网访问: MuYunyun.github.io(拿我举例),就能访问到里面的静态资源了,由于博主已经把MuYunyun.github.io 绑定了 http://muyunyun.cn 域名,所以你实际上会访问到的是muyunyun.cn。
如果你想知道楼主如何基于github搭建自己的博客,可以看我的另外一篇文章。这次讲的重点主要是gh-pages,接着继续。
案例1
那可能有朋友会不解,既然楼主你说的 Github用户名.github.io 已经能展示页面了,那gh-pages是什么作用呢?
答:大家不会只有一个项目要展示的吧,万一你和楼主一样把 Github用户名.github.io 作为博客了,那不就没地方展示项目了吗?所以就有了gh-pages这个东东。
理解了这点,接着举个例子。
如上图所示,通过git-add -A、git -commit -m "..." 命令把完成的项目上传到github上以后,默认的是处于master分支,你可以进该案例地址看看项目结构。接着我们要做的是展现dist目录下的静态文件,那最关键的语句来了
git subtree push --prefix=dist origin gh-pages
意思就是把指定的dist文件提交到gh-pages分支上,
那这时候,我们看到已经多出了一个gh-pages分支,那么展示地址就是 Github用户名.github.io/创建的仓库名 拿我的这个案例来讲,它的展示地址就是 MuYunyun.github.io/gallery-by-react/ ,当然你看到的会是muyunyun.cn/gallery-by-react/。
案例2
那么上面这个例子展示的项目文件中的某个文件,那么如果我想把项目里的所有文件都展示那该如何做呢?上个最简单的案例
和上面那个案例一样,通过git add -A 以及 git commit -m "..." 把项目上传到github以后,目录结构如上图,我想让所有的界面包括js,css都展现出来,那该怎么做,其实只比上面那个例子多上一句git底层命令: git symbolic-ref
完整的步骤我上一遍:
text git:(master) git symbolic-ref HEAD refs/heads/gh-pages
git add -A
git commit -m "..."
git push origin gh-pages
那现在就已经多出来gh-pages分支了,也就是说我们可以展示自己项目了(*^__^*),那展示地址还是和上面那个案例一样的写法 Github用户名.github.io/创建的仓库名,拿我的这个案例来讲,它的展示地址就是 MuYunyun.github.io/text/ ,当然你看到的会是muyunyun.cn/text/。
写在后面
大体就是这样一个步骤了,希望对大家有所帮助,快去github展示自己的项目吧。mark~mark~
如何用Github的gh-pages分支展示自己的项目的更多相关文章
- 利用Github Pages生成一个快速访问的网址,展示自己的项目
利用Github Pages展示自己的项目 写了个小项目,想要分享出去,一直在用Github管理项目,了解到Github还有Github Pages功能,然后惊喜的发现Github pages可以搭建 ...
- Github 与Git pages
基础git命令 设置username,email $ git config --global user.name "your name" $ git config --global ...
- GitHub学习心得之 分支操作
目录 前言 1. 一般的push和pull 2. 分支操作 前言 本文对Github的分支操作进行了总结, 主要基于以下文章: http://blog.csdn.net/guang11cheng/ar ...
- 通过git在github上建立gh-pages分支并查看网页效果
建立gh-pages分支: 进入到你想要上传的文件夹下: cd text(text为文件夹名) git初始化 git init 创 ...
- 在github上创建新分支
在github上创建仓库: Create a new repository on the command line touch README.md git init git add README.md ...
- GitHub上最受欢迎的Android开源项目TOP20
以下这些开源项目都是从GitHub上筛选的,我强烈推荐android程序源代码有时间的时候自己在上面淘淘,或许能发现自己须要的开源程序. 了解开源项目有两个优点: 1.借鉴代码,一般来说.火爆的开源项 ...
- GitHub上最受欢迎的iOS开源项目TOP20
AFNetworking 在众多iOS开源项目中,AFNetworking可以称得上是最受开发者欢迎的库项目.AFNetworking是一个轻量级的iOS.Mac OS X网络通信类库,现在是GitH ...
- Git 使用篇一:初步使用GitHub,下载安装git,并上传项目
首先在MAC上怎么操作. 在gitHub创立一个账户,在创立一个项目,这就不用我说了对吧. 创建完之后是这样的: 接下来,我们打开https://brew.sh 这是下载homebrew的网站,hom ...
- 强烈推荐 GitHub 上值得前端学习的开源实战项目
强烈推荐 GitHub 上值得前端学习的开源实战项目. Vue.js vue-element-admin 是一个后台前端解决方案,它基于和 element-ui 实现 基于 iView 的 Vue 2 ...
随机推荐
- 使用URL读取网络图片资源
URL(Uniform Resource Locator) 对象代表统一资源定位器. 代码如下: public class MainActivity extends ActionBarActivity ...
- Carthage&&cocopads 摘抄笔记
Carthage 是 iOS/Mac 开发生态圈的一个包管理工具,与现在流行的 CocoaPods 不同,它是一个去中心化的解决方案.知道它已经有一段时间了,但是一直没有好好玩过,今天整合 Carth ...
- MyEclipse汉化后问题
今天为了教学生如何汉化MyEclipse10.7,所以讲IDE汉化了一下. 个人还是喜欢用英文版,所以就将D:\MyEclipse\MyEclipse 10目录下的配置文件myeclipse.ini里 ...
- 《Effective C++》 阅读小结 (笔记)
A person who is virtuous is also courteous. "有德者必知礼" 书本介绍:<Effective C++:改善程序与设计的55个具体做 ...
- webApi项目中的问题
1.场景:客户端调用API获取所有品牌列表,使用redis存储,第一次是获取全部,之后会增量获取,通过lasttime参数 出现的问题:redis连接超时,网络流量太大 原因:这个借口没做本地缓存,每 ...
- (转)C#.NET使用TTS引擎实现文语转换
(转)C#.NET使用TTS引擎实现文语转换 本文讲述使用微软TTS5.1语音引擎(中文)实现文本阅读和音频输出为WAV完美解决方案. 网上很多文章说的是要安装SAPI.51 SDK,而这个东西有好几 ...
- 使用C#版本GDAL读取复数图像
GDAL的C#版本虽然在很多算法接口没有导出,但是在读写数据中的接口基本上都是完全导出了.使用ReadRaster和WriteRaster方法来进行读写,同时对这两个方法进行了重载,对于常用的数据类型 ...
- Linux 在一个命令行上执行多个命令(转载)
对于单个命令执行我想大多数人都是明了的,也就是在一个命令行上执行一条命令.那对于在一行上执行多个命令怎么办呢,其实也很简单,只需在各命令之间加上特殊命令符号,我们常规使用到的有3个特殊命令符号. 1. ...
- NMAP扫描UDP123NTP端口详解
我用的nmap版本:Zenmap 6.25 例如命令: nmap -sU -pU:123 -Pn -n --script=ntp-monlist IP 如果要批量进行,可以把IP存放在ip.txt可以 ...
- 标签 Attribute
在一个类上面放一个标签,可以用来表示一些特定规则,比如某个对象的某个属性不想被json化,那么我们在它头上放个标签就行了,或是做ORM时指定某个Class对应的table名字等. 最后标签是通过反射来 ...