<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hugo | Chia-An Lee</title><link>https://calee0219.github.io/tag/hugo/</link><atom:link href="https://calee0219.github.io/tag/hugo/index.xml" rel="self" type="application/rss+xml"/><description>Hugo</description><generator>HugoBlox Kit (https://hugoblox.com)</generator><language>en-us</language><copyright>©</copyright><lastBuildDate>Sun, 21 Jun 2020 22:13:15 +0800</lastBuildDate><image><url>https://calee0219.github.io/media/icon_hu_da05098ef60dc2e7.png</url><title>Hugo</title><link>https://calee0219.github.io/tag/hugo/</link></image><item><title>Building hugo-academic with GitHub</title><link>https://calee0219.github.io/blog/deploy_hugo/</link><pubDate>Sun, 21 Jun 2020 22:13:15 +0800</pubDate><guid>https://calee0219.github.io/blog/deploy_hugo/</guid><description>&lt;p&gt;Hugo + Academic theme + github pages 個人網頁&lt;/p&gt;
&lt;p&gt;Academic 官網建議使用 Netlify 方式部署，方法可見
&lt;/p&gt;
&lt;h2 id="安裝-hugo"&gt;安裝 HUGO&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;macOS&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;brew install hugo
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Ubuntu&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="下載-hugo-academic"&gt;下載 Hugo Academic&lt;/h2&gt;
&lt;p&gt;這裡建議直接用
修改，原因是 academic 要新增的 config 頗多，直接修改會比較簡單&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;git clone https://github.com/sourcethemes/academic-kickstart.git
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;cd&lt;/span&gt; academic-kickstart
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;git submodule update --init --recursive
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;用以下指令跑起 server 確認是否下載成功&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;hugo server -D
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;到網頁 &lt;code&gt;http://localhost:1313&lt;/code&gt; 觀看執行結果，另外 &lt;code&gt;hugo server -D&lt;/code&gt; 會動態修改，所以可以放著給它跑&lt;/p&gt;
&lt;h2 id="調整內容"&gt;調整內容&lt;/h2&gt;
&lt;h3 id="設定"&gt;設定&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;刪除教學導覽&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;rm content/home/demo.md
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;修改網頁 metadata&lt;/p&gt;
&lt;p&gt;
&lt;figure &gt;
&lt;div class="flex justify-center "&gt;
&lt;div class="w-full" &gt;&lt;img src="https://calee0219.github.io/img/hugo-metadata.png" alt="" loading="lazy" data-zoomable /&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;修改 title icon&lt;/p&gt;
&lt;p&gt;更改 &lt;code&gt;assets/images/icon.png&lt;/code&gt;，將此檔案修改成需要的 icon&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;修改 &lt;code&gt;/config/_default/params.toml&lt;/code&gt;，這份檔案擁有幾乎所有網站的參數，確實將需要的填入&lt;/p&gt;
&lt;p&gt;特別需要注意，其中 &lt;code&gt;address&lt;/code&gt;, &lt;code&gt;address_format&lt;/code&gt; 跟 &lt;code&gt;[address_format]&lt;/code&gt; 需要互相配合 (格式有的欄位都要有)，不然之後如果有需要用來產生 address 可能會出現問題&lt;/p&gt;
&lt;p&gt;另外 &lt;code&gt;main_menu = {align = &amp;quot;r&amp;quot;, show_logo = true}&lt;/code&gt; 個人習慣 align 都靠右，會有 navbar 靠右的效果&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="header"&gt;header&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;修改 &lt;code&gt;/config/_default/menus.toml&lt;/code&gt;，其中 &lt;code&gt;weight&lt;/code&gt; 參數的大小會決定這個 tag 放置前後，weight 越小，排越前面&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="內容"&gt;內容&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;將不需要的 block 隱藏，選擇 &lt;code&gt;content/home/&lt;/code&gt; 下的 .md 檔案，將不需要的 md 內，&lt;code&gt;active = false&lt;/code&gt;，需要的 &lt;code&gt;active = true&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;
&lt;figure &gt;
&lt;div class="flex justify-center "&gt;
&lt;div class="w-full" &gt;&lt;img src="https://calee0219.github.io/img/hugo-active.png" alt="" loading="lazy" data-zoomable /&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;about.md&lt;/code&gt; 需要另外修改，他是使用 link 到 admin author (預設是 admin，你也可以改成其他人)&lt;/p&gt;
&lt;p&gt;需要去 &lt;code&gt;content/authors/admin/_index.md&lt;/code&gt; 修改使用者資料&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;icon: 像是 &lt;code&gt;skills.md&lt;/code&gt; 頁面或其他會需要用到 icon，academic 預設有連動 &lt;code&gt;font awesome&lt;/code&gt; 跟 &lt;code&gt;jpswalsh&lt;/code&gt; 的 icon，更多的需要自行匯入 svg 檔到 &lt;code&gt;/assets/images/icon-pack/&lt;/code&gt; 內，然後使用時填寫如下，其中 icon 部分填寫檔名 (.svg 之前的內容)&lt;/p&gt;
&lt;p&gt;
&lt;figure &gt;
&lt;div class="flex justify-center "&gt;
&lt;div class="w-full" &gt;&lt;img src="https://calee0219.github.io/img/hugo-custom-icon.png" alt="" loading="lazy" data-zoomable /&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;Ref:
&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="部署-github-pages"&gt;部署 GitHub Pages&lt;/h2&gt;
&lt;h3 id="產生-source-html"&gt;產生 source (html)&lt;/h3&gt;
&lt;p&gt;用 &lt;code&gt;hugo&lt;/code&gt; 指令不加參數會生產 html file，但是 default 會 generate 在 &lt;code&gt;/public&lt;/code&gt; 資料夾下面&lt;/p&gt;
&lt;p&gt;如果有特別需求 (等下會用到)，可以在 &lt;code&gt;config/_default/config.toml&lt;/code&gt; 裡面新增一個參數 &lt;code&gt;publicDir = &amp;quot;/docs&amp;quot;&lt;/code&gt; 指定 generate 的 folder&lt;/p&gt;
&lt;h3 id="部署上-github"&gt;部署上 GitHub&lt;/h3&gt;
&lt;h4 id="github-pages"&gt;GitHub Pages&lt;/h4&gt;
&lt;p&gt;GitHub 提供兩種 GitHub Pages 可以使用，一種是 &lt;code&gt;http(s)://&amp;lt;user&amp;gt;.github.io&lt;/code&gt;，而另外一種是 &lt;code&gt;http(s)://&amp;lt;user&amp;gt;.github.io/&amp;lt;repository&amp;gt;&lt;/code&gt;，可以參考
，建議視是否為自己主頁做考量，因為當別人在 GitHub 想查詢你這個使用者時，常常會試著看看是否有 &lt;user&gt;.github.io 這個 repo，因此如果你希望被看到，可以考慮第一種方法&lt;/p&gt;
&lt;p&gt;如果是使用方法一，需要在 GitHub 上開一個 &lt;user&gt;.github.io 的 repo，&lt;user&gt; 填入自己的 GitHub account，其他的 repo 名稱都無法，至於後續的設定兩種方法都一樣&lt;/p&gt;
&lt;p&gt;使用方法二好處是可以一直開專案，專案名稱自訂。開好專案後直接將 code 連同 html source 一起推上去，由於 GitHub Pages 只提供兩種來源讀 html source，一個是從專案的 root，另外一個是從專案的 &lt;code&gt;/docs&lt;/code&gt; 讀，又個人不建議直接把 html source 放在 root 會變得很亂，因此推薦把 html source 統一編進 &lt;code&gt;/docs&lt;/code&gt; 資料夾內，編完推 code 後，到 Setting 頁往下滑，看到 &lt;code&gt;GitHub Pages&lt;/code&gt;，如圖設定即可&lt;/p&gt;
&lt;p&gt;
&lt;figure &gt;
&lt;div class="flex justify-center "&gt;
&lt;div class="w-full" &gt;&lt;img src="https://calee0219.github.io/img/GitHub_Pages.png" alt="" loading="lazy" data-zoomable /&gt;&lt;/div&gt;
&lt;/div&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 id="github-actions"&gt;GitHub Actions&lt;/h4&gt;
&lt;p&gt;另外一種部署方法是使用 CD 來做，官方建議用 netlify，也可以使用 GitHub Actions 來部署，用這種方法就不需要推 src 上 repo 裡面&lt;/p&gt;
&lt;p&gt;參考
與
兩份文件&lt;/p&gt;</description></item></channel></rss>