GitHub Pages 建立個人網(wǎng)站詳細(xì)教程
時間:2022-08-11 00:15:02 | 來源:網(wǎng)站運(yùn)營
時間:2022-08-11 00:15:02 來源:網(wǎng)站運(yùn)營
本文作者:雨知
一、Git簡介
Git是一個開源的分布式版本控制系統(tǒng),用以有效、高速的處理從很小到非常大的項(xiàng)目版本管理。GitHub可以托管各種git庫的站點(diǎn)。
GitHub Pages是免費(fèi)的靜態(tài)站點(diǎn),三個特點(diǎn):免費(fèi)托管、自帶主題、支持自制頁面和Jekyll。
二、為什么使用Github Pages
- 搭建簡單而且免費(fèi);
- 支持靜態(tài)腳本;
- 可以綁定你的域名;
- DIY自由發(fā)揮,動手實(shí)踐一些有意思的東西git,markdown,bootstrap,jekyll;
- 理想寫博環(huán)境,git+github+markdown+jekyll;
三、創(chuàng)建Github Pages
3.1 安裝git工具
http://windows.github.com/
http://mac.github.com/
3.2 兩種pages模式
1.User/Organization Pages 個人或公司站點(diǎn)
- 使用自己的用戶名,每個用戶名下面只能建立一個;
- 資源命名必須符合這樣的規(guī)則username/http://username.github.com;
- 主干上內(nèi)容被用來構(gòu)建和發(fā)布頁面
2.Project Pages 項(xiàng)目站點(diǎn)
- gh-pages分支用于構(gòu)建和發(fā)布;
- 如果user/org pages使用了獨(dú)立域名,那么托管在賬戶下的所有project pages將使用相同的域名進(jìn)行重定向,除非project pages使用了自己的獨(dú)立域名;
- 如果沒有使用獨(dú)立域名,project pages將通過子路徑的形式提供服務(wù)http://username.github.com/projectname;
- 自定義404頁面只能在獨(dú)立域名下使用,否則會使用User Pages 404;
- 創(chuàng)建項(xiàng)目站點(diǎn)步驟:
$ git clone https://github.com/USERNAME/PROJECT.git PROJECT$ git checkout --orphan gh-pages$ git rm -rf .$ git add .$ git commit -a -m "First pages commit"$ git push origin gh-pages
3.可以通過User/Organization Pages建立主站,而通過Project Pages掛載二級應(yīng)用頁面。
3.3 創(chuàng)建步驟
第一步:創(chuàng)建個人站點(diǎn)
第二步:設(shè)置站點(diǎn)主題
進(jìn)入資源-setting
更新你的站點(diǎn)
選擇主題并發(fā)布
3.4 常用命令
$ git clone git@github.com:username/username.github.com.git //本地如果無遠(yuǎn)程代碼,先做這步,不然就忽略$ cd .ssh/username.github.com //定位到你blog的目錄下$ git pull origin master //先同步遠(yuǎn)程文件,后面的參數(shù)會自動連接你遠(yuǎn)程的文件$ git status //查看本地自己修改了多少文件$ git add . //添加遠(yuǎn)程不存在的git文件$ git commit * -m "what I want told to someone"$ git push origin master //更新到遠(yuǎn)程服務(wù)器上
四、使用Jekyll搭建博客
4.1 什么是jekyll
Jekyll是一種簡單的、適用于博客的、靜態(tài)網(wǎng)站生成引擎。它使用一個模板目錄作為網(wǎng)站布局的基礎(chǔ)框架,支持Markdown、Textile等標(biāo)記語言的解析,提供了模板、變量、插件等功能,最終生成一個完整的靜態(tài)Web站點(diǎn)。
說白了就是,只要安裝Jekyll的規(guī)范和結(jié)構(gòu),不用寫html,就可以生成網(wǎng)站。[jekyll介紹][jekyll on github][jekyllbootstrap]。
Jekyll使用Liquid模板語言,{{page.title}}表示文章標(biāo)題,{{content}}表示文章內(nèi)容。我們可以用兩種Liquid標(biāo)記語言:輸出標(biāo)記(output markup)和標(biāo)簽標(biāo)記 (tag markup)。輸出標(biāo)記會輸出文本(如果被引用的變量存在),而標(biāo)簽標(biāo)記不會。輸出標(biāo)記是用雙花括號分隔,而標(biāo)簽標(biāo)記是用花括號-百分號對分隔。[Liquid模板語言] [Liquid模板變量參考]。
jekyll與github的關(guān)系:GitHub Pages一個由 GitHub 提供的用于托管項(xiàng)目主頁或博客的服務(wù),jekyll是后臺所運(yùn)行的引擎。
4.2 jekyll本地環(huán)境搭建
1.下載最新的RubyInstaller并安裝(我下載的是rubyinstaller-1.9.3-p194.exe),設(shè)置環(huán)境變量,path中配置C:Ruby193bin目錄,然后在命令行終端下輸入gem update --system來升級gem;
2.下載最新的DevKit,DevKit是windows平臺下編譯和使用本地C/C++擴(kuò)展包的工具。它就是用來模擬Linux平臺下的make,gcc,sh來進(jìn)行編譯。但是這個方法目前僅支持通過RubyInstaller安裝的Ruby,并雙擊運(yùn)行解壓到C:DevKit。然后打開終端cmd,輸入下列命令進(jìn)行安裝:
cd C:/DevKitruby dk.rb initruby dk.rb install
3.完成上面的準(zhǔn)備就可以安裝Jekyll了,因?yàn)镴ekyll是用Ruby編寫的,最好的安裝方式是通過RubyGems(gem):
gem install Jekyll
并使用命令檢驗(yàn)是否安裝成功
jekyll --version
4.安裝Rdiscount,這個用來解析Markdown標(biāo)記的包,使用如下命令:
gem install rdiscount
5.運(yùn)行本地工程:
cd 到工程目錄,啟動服務(wù):
jekyll --server
4.3 jekyll目錄結(jié)構(gòu)
_posts:
_posts中的數(shù)據(jù)文檔,通過注入_layouts定義的模板,通過jekyll --server最終生成的靜態(tài)頁面在_sites目錄。目錄是用來存放你的文章的,一般以日期的形式書寫標(biāo)題。
_layouts:
_layouts中的模板一般指向了_includes/themes中的模板。目錄是用來存放模板的,在這里你可以定義頁面中不同的頭部和底部。
_includes:
- _includes/JB中有一些常用的工具,用于列表顯示、評論等;
- _includes/themes中可參看主題的相關(guān)html文檔。
- _includes/themes中的主題一般包含default.html、post.html和page.html三個文檔。default.html定義了網(wǎng)站的最上層框架(模板),post.html和page.html是其子框架(模板)。
- 生成好的html子頁面通過default.html的{{ content }}變量調(diào)用,生成整個頁面。
assets
渲染頁面的CSS和JS文檔在assets/themes中
_config.yml
站點(diǎn)生成需要用到_config.yml配置文件,站點(diǎn)的全局變量在_config.yml中定義,用site.訪問;頁面的變量在YAML Front Matter中定義,用page.訪問,更多的模板變量可參考模板數(shù)據(jù)。
index.html
你的頁面首頁。
4.4 Jekyll-Bootstrap創(chuàng)建博客
1.創(chuàng)建個人站點(diǎn),即創(chuàng)建一個新資源,格式為
http://username.github.com;
2.安裝Jekyll-Bootstrap:
$ git clone https://github.com/plusjade/jekyll-bootstrap.git USERNAME.github.com$ cd USERNAME.github.com$ git remote set-url origin git@github.com:USERNAME/USERNAME.github.com.git$ git push origin master
3.訪問創(chuàng)建好的個人站點(diǎn):
http://username.github.com
4.在本地測試查看效果:
cd USERNAME.github.comjekyll --server
4.5 Jekyll 寫博過程
1、配置_config.yml:
- 修改標(biāo)題:title : My Blog =)
- 修改個人信息:
1 2 3 4 5 6 author : name :
Name Lastname email : blah@email.test github : username twitter : username feedburner : feedname
- 引用:_config.yml中的鍵值均引用到其他頁面{{ site.title }};
2、寫文章
按照_config.yml的格式permalink: /:categories/:year/:month/:day/:title,可以修改格式,創(chuàng)建markdown格式文件,就可以當(dāng)初博客發(fā)布了。
3、發(fā)布
本地預(yù)覽修改:運(yùn)行jekyll –server,預(yù)覽http:127.0.0.1:4000。
發(fā)布到github上:通過命令提交或者客戶端提交。
4.6 個性化博客
Github Page完成了博客的主要功能,寫作、發(fā)布、修改,這些都是相對靜態(tài)的東西,就是你自己可以控制的事情,還有一些動態(tài)的東西Github Pages無法支持,比如說文章瀏覽次數(shù)、文章的評論等,還有一些個性化的東西,像個性化頁頭頁尾、代碼高亮可以把博客整的更漂亮一點(diǎn),其實(shí)這寫都可以通過第三方應(yīng)用來實(shí)現(xiàn),個性化自己的博客。
加上Disqus云評論:
注冊:
http://disqus.com/
修改_config.yml:
1 2 3 4 comments : provider : disqus disqus : short_name : tiansj
五、使用Markdown
5.1 簡介
Markdown 的宗旨是實(shí)現(xiàn)「易讀易寫」??勺x性,無論如何,都是最重要的。
Markdown 的語法全由一些符號所組成,這些符號經(jīng)過精挑細(xì)選,其作用一目了然。格式撰寫的文件可以直接以純文本發(fā)布,并且看起來不會像是由許多標(biāo)簽或是格式指令所構(gòu)成。
資料:
http://www.cnblogs.com/purediy/archive/2013/01/10/2855397.html
5.2 基本語法
1、使用一個或多個空行分隔內(nèi)容段來生成段落 <p>。
2、標(biāo)題(h1~h6)格式為使用相應(yīng)個數(shù)的“#”作前綴。
比如以下代碼表示 h3:
### this is a level-3 header ###
3、使用“>”作為段落前綴來標(biāo)識引用文字段落。這其實(shí)是 email 中標(biāo)記引用文字的標(biāo)準(zhǔn)方式:
> 引用的內(nèi)容
> 這個記號直接借鑒的郵件標(biāo)準(zhǔn)
4、使用“*”“+”“-”來表示無序列表;使用數(shù)字加“.”表示有序列表。如:
1. I am ordered list item 1...
2. So I should be item 2!?
5、使用 4 個以上 空格或 1 個以上 的 tab 來標(biāo)記代碼段落,它們將被<pre> 和 <code> 包裹,這意味著代碼段內(nèi)的字體會是 monospace家族的,并且特殊符號不會被轉(zhuǎn)義。
6、使用 [test](http://example.net "optional title") 來標(biāo)記普通鏈接。
7、使用  來標(biāo)記圖片。
引號內(nèi)的 title 文字是可選的,鏈接也可以使用相對路徑。
8、使用 * 或 _ 包裹文本產(chǎn)生 strong 效果:
_語氣很重的文本_ 以及 **語氣更重的文本**
5.3 Notepad++支持Markdown語法高亮
- 下載userDefineLang.xml
- 將 userDefineLang.xml 放置到此目錄:
C:UsersAdministratorAppDataRoamingNotepad++ - 重啟 Notepad++,在語言菜單下可以看到自定義的 Markdown 高亮規(guī)則