hugo搭建github博客過程

2016年10月12日

安裝

1.安裝hugo

hugo是一個(gè)快速的靜態(tài)網(wǎng)站引擎祠挫,使用Go語言開發(fā)筏餐,可以用Markdown格式的文章生成一個(gè)完整的靜態(tài)網(wǎng)站甘磨,然后托管到自己的用戶名.Github.io的Github倉庫中叠纷,實(shí)現(xiàn)一個(gè)靜態(tài)站點(diǎn)窖贤,一般用于博客或者項(xiàng)目主頁等愕贡,先從官網(wǎng)下載(mac機(jī)器上可以直接用brew install hugo) 安裝完成hugo草雕,然后使用huge new site blog-name,進(jìn)入blog-name可以看到如下結(jié)構(gòu): ? archetypes/

? content/

? layouts/

? static/

config.toml

添加about.md到目錄中固以,執(zhí)行命令:hugo new about.md墩虹,產(chǎn)生的about.md存在content文件夾中

添加第一條blog文件到目錄中,執(zhí)行命令:hugo new post/你的blog的文件名.md(注意:hugo命令必須在根目錄執(zhí)行憨琳,否則會(huì)報(bào)錯(cuò))

2.安裝主題

hugo可以自己配制主題诫钓,在blog-name文件夾中創(chuàng)建themes,然后將主題文件夾放到themes中

目前hugo的github收錄了很多主題列表:https://github.com/spf13/hugoThemes篙螟,可以git clone 你想要的主題

目前我的blog使用的主題:git clonehttps://github.com/coderzh/hugo-pacman-theme

3.修改config.toml配置

hugo的配置可以使用json(config.json)菌湃,yaml(config.yaml)和toml(config.toml),一般都采用toml遍略,本博客配置如下:

BaseURL ="http://linkxzhou.github.io/"# 站點(diǎn)的名稱LanguageCode ="zh-CN"# 使用編碼HasCJKLanguage =trueTitle ="linkxzhou的博客"# 大標(biāo)題Theme ="none"# 暫無pygmentsStyle ="default"pygmentsUseClasses =trueRSSUri ="feed.xml"# rss的訂閱數(shù)據(jù)[Author]? Name ="linkxzhou"# 作者[Params]? AuthorHomepage ="http://linkxzhou.github.io"Author ="linkxzhou"BottomIntroduce ="不負(fù)春光惧所,野蠻生長"Description =""Subtitle ="一個(gè)追求技術(shù)的偏執(zhí)者"Imglogo ="img/logo.svg"AuthorImg ="img/author.jpg"# 日期時(shí)間格式DateFormat ="2006年01月02日"MonthFormat ="2006年01月"FancyBox =true

啟動(dòng)

測(cè)試環(huán)境查看blog:

hugo server --theme=hugo-pacman-theme --buildDrafts --watch -d ./dev--theme 使用主題,對(duì)應(yīng)到themes文件夾目錄--buildDrafts 構(gòu)建暫時(shí)不發(fā)布的markdown绪杏,根據(jù)markdown的draft判斷(true-- 草稿文件下愈,false-- 生成站點(diǎn)文件)--watch 監(jiān)聽文件變化,文件變化后網(wǎng)頁上自動(dòng)變化-d 目標(biāo)文件 生成對(duì)應(yīng)的發(fā)布github目錄文件‘// 其他命令--port=80// 綁定端口--bind=0.0.0.0// 綁定ip

生成文件到github發(fā)布目錄命令:

sudo hugo server --theme=hugo-pacman-theme --baseUrl='https://linkxzhou.github.io'--watch --port=443-d./public

發(fā)布文件中猶豫baseUrl需要替換為github路徑蕾久,所以需要注意幾點(diǎn): 1.添加baseUrl势似,如:–baseUrl=‘https://linkxzhou.github.io'

2.url修改為https,現(xiàn)在github都是https的鏈接

3.設(shè)定對(duì)應(yīng)的綁定端口僧著,http設(shè)定port=80叫编,https設(shè)定port=443

發(fā)布github

1.創(chuàng)建github目錄文件

在github中New reository,用戶名一定要用:你的注冊(cè)用戶名.github.io霹抛,其他無需修改搓逾,然后點(diǎn)擊Create repository即可

2.github本地文件提交

// 1.設(shè)置配置git config --globaluser.name"你的注冊(cè)用戶名"git config --globaluser.email"你的郵箱"git config --globalcolor.ui auto// 2.設(shè)置生成的ssh keyssh-keygen -t rsa -C"你的郵箱"要求輸入存儲(chǔ)id_rsa的目錄,接著是輸入密碼杯拐,這個(gè)密碼可以與github的不同霞篡,過程中確認(rèn)即可世蔗,最后會(huì)出現(xiàn)一個(gè)隨機(jī)圖形,說明生成SSH密匙成功朗兵,這樣需要到剛剛的存儲(chǔ)目錄下打開id_rsa.pub復(fù)制里面的內(nèi)容污淋,到你的github頁面上->點(diǎn)擊右上角頭像旁三角->settings->SSH keys->add SSH key->黏貼剛剛復(fù)制的內(nèi)容保存// 3.初始化與提交githubcdpublicgit initgit remote add origin https://github.com/用戶名/用戶名.github.io.gitgit add -Agit commit -m"提交注釋"git push -u origin master// 4.修改文件提交git add -Agit commit -m"提交注釋"git push -u origin master

注意:提交github可能存在一些未知問題,但是一般能找到相應(yīng)的答案(在此不詳細(xì)解答)

hugo寫markdown文件規(guī)范

文件頭部格式:

+++Categories =["github"]Tags = ["github","開發(fā)者","go"]date ="2017-02-12T18:20:42+08:00"title ="hugo搭建github博客過程"description ="111"+++

1.title 文章名稱

2.description 文章詳細(xì)介紹

3.tag 標(biāo)簽

4.categories 文章分類

在 +++ 與 +++ 中寫完規(guī)范以后余掖,然后可以添加markdown格式的正文內(nèi)容(markdown格式文件暫時(shí)不介紹寸爆,可以參考https://segmentfault.com/markdown)

注意:

可能大家有自己的公眾號(hào),那么如何將markdown轉(zhuǎn)換為微信的編輯格式呢盐欺?

最快捷的方法:使用http://mahua.jser.me赁豆,在右側(cè)生成對(duì)應(yīng)的文章以后直接復(fù)制到微信的文章中,可以不改變樣式冗美;

比較完整的方法:參考http://www.reibang.com/p/b09125018c04

附錄

(1)git clone 命令

git clone <版本庫的網(wǎng)址>git clone <版本庫的網(wǎng)址> <本地目錄名># 支持多種協(xié)議$ git clone http[s]://example.com/path/to/repo.git/$ git clonessh://example.com/path/to/repo.git/$ git clonegit://example.com/path/to/repo.git/$ git clone /opt/git/project.git$ git clonefile:///opt/git/project.git$ git clone ftp[s]://example.com/path/to/repo.git/$ git clonersync://example.com/path/to/repo.git/

(2)git remote

git remote# 命令列出所有遠(yuǎn)程主機(jī)git remote -v# 遠(yuǎn)程主機(jī)的網(wǎng)址git remote show <主機(jī)名># 查看該主機(jī)的詳細(xì)信息

(3)git fetch

git fetch <遠(yuǎn)程主機(jī)名> <分支名>#取回所有分支(branch)的更新git fetch origin master#取回origin主機(jī)的master分支git branch#命令的-r選項(xiàng)魔种,可以用來查看遠(yuǎn)程分支,-a選項(xiàng)查看所有分支git checkout -b newBrach origin/master#取回遠(yuǎn)程主機(jī)的更新以后粉洼,可以在它的基礎(chǔ)上节预,使用git checkout命令創(chuàng)建一個(gè)新的分支git merge origin/master 或者 git rebase origin/master# 在本地分支上合并遠(yuǎn)程分支

(4)git pull

git pull <遠(yuǎn)程主機(jī)名> <遠(yuǎn)程分支名>:<本地分支名>#git pull命令的作用是,取回遠(yuǎn)程主機(jī)某個(gè)分支的更新属韧,再與本地的指定分支合并git pull originnext:master#取回origin主機(jī)的next分支安拟,與本地的master分支合并# 在某些場(chǎng)合,Git會(huì)自動(dòng)在本地分支與遠(yuǎn)程分支之間宵喂,建立一種追蹤關(guān)系(tracking);比如糠赦,在git clone的時(shí)候,所有本地分支默認(rèn)與遠(yuǎn)程主機(jī)的同名分支樊破,建立追蹤關(guān)系愉棱,也就是說,本地的master分支自動(dòng)"追蹤"origin/master分支哲戚;# 加上參數(shù) -p 就會(huì)在本地刪除遠(yuǎn)程已經(jīng)刪除的分支$ git pull -p$ git fetch --prune origin$ git fetch -p

(5)git push

git push <遠(yuǎn)程主機(jī)名> <本地分支名>:<遠(yuǎn)程分支名># 如果省略遠(yuǎn)程分支名奔滑,則表示將本地分支推送與之存在"追蹤關(guān)系"的遠(yuǎn)程分支git push origin:master# 等同于 git push origin --delete mastergit push -u origin master# 使用-u選項(xiàng)指定一個(gè)默認(rèn)主機(jī)# 如果遠(yuǎn)程主機(jī)的版本比本地版本更新,推送時(shí)Git會(huì)報(bào)錯(cuò)顺少,要求先在本地做git pull合并差異朋其,然后再推送到遠(yuǎn)程主機(jī)。這時(shí)脆炎,如果你一定要推送梅猿,可以使用--force選項(xiàng)git push --force origin# git push不會(huì)推送標(biāo)簽(tag),除非使用--tags選項(xiàng)git push origin --tags


?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末秒裕,一起剝皮案震驚了整個(gè)濱河市袱蚓,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌几蜻,老刑警劉巖喇潘,帶你破解...
    沈念sama閱讀 219,490評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件体斩,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡颖低,警方通過查閱死者的電腦和手機(jī)絮吵,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來忱屑,“玉大人蹬敲,你說我怎么就攤上這事≥航洌” “怎么了伴嗡?”我有些...
    開封第一講書人閱讀 165,830評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長脏毯。 經(jīng)常有香客問我闹究,道長幔崖,這世上最難降的妖魔是什么食店? 我笑而不...
    開封第一講書人閱讀 58,957評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮赏寇,結(jié)果婚禮上吉嫩,老公的妹妹穿的比我還像新娘。我一直安慰自己嗅定,他們只是感情好自娩,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,974評(píng)論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著渠退,像睡著了一般忙迁。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上碎乃,一...
    開封第一講書人閱讀 51,754評(píng)論 1 307
  • 那天姊扔,我揣著相機(jī)與錄音,去河邊找鬼梅誓。 笑死恰梢,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的梗掰。 我是一名探鬼主播嵌言,決...
    沈念sama閱讀 40,464評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼及穗!你這毒婦竟也來了摧茴?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,357評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤埂陆,失蹤者是張志新(化名)和其女友劉穎苛白,沒想到半個(gè)月后尘分,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,847評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡丸氛,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,995評(píng)論 3 338
  • 正文 我和宋清朗相戀三年培愁,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片缓窜。...
    茶點(diǎn)故事閱讀 40,137評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡定续,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出禾锤,到底是詐尸還是另有隱情私股,我是刑警寧澤,帶...
    沈念sama閱讀 35,819評(píng)論 5 346
  • 正文 年R本政府宣布恩掷,位于F島的核電站倡鲸,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏黄娘。R本人自食惡果不足惜峭状,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,482評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望逼争。 院中可真熱鬧优床,春花似錦、人聲如沸誓焦。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽杂伟。三九已至移层,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間赫粥,已是汗流浹背观话。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評(píng)論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留傅是,地道東北人匪燕。 一個(gè)月前我還...
    沈念sama閱讀 48,409評(píng)論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像喧笔,于是被迫代替她去往敵國和親帽驯。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,086評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 前言 Git是目前最流行的版本管理系統(tǒng)书闸,學(xué)會(huì)Git幾乎成了開發(fā)者的必備技能尼变。 Git有很多優(yōu)勢(shì),其中之一就是遠(yuǎn)程操...
    Simon0903閱讀 309評(píng)論 0 0
  • Git有很多優(yōu)勢(shì),其中之一就是遠(yuǎn)程操作非常簡便嫌术。本文詳細(xì)介紹5個(gè)Git命令哀澈,它們的概念和用法,理解了這些內(nèi)容度气,你就...
    bondPang閱讀 1,330評(píng)論 0 6
  • 1.參與一個(gè)開源項(xiàng)目割按,一定要從自己的帳號(hào)下克隆版本庫,這樣你才能推送修改磷籍! 2.Repository 版本庫适荣,又名...
    sys1211閱讀 304評(píng)論 0 2
  • 1.GitHub 有什么用 學(xué)習(xí)優(yōu)秀的開源項(xiàng)目開源社區(qū)一直有一句流行的話叫「不要重復(fù)發(fā)明輪子」,某種意義上正是因?yàn)?..
    Clemente閱讀 1,433評(píng)論 1 14
  • 1.git clone 遠(yuǎn)程操作的第一步院领,通常是從遠(yuǎn)程主機(jī)克隆一個(gè)版本庫弛矛,這時(shí)就要用到git clone命令。 $...
    右耳Deng閱讀 381評(píng)論 1 0