基本用法
測試安裝
安裝 Hugo 後,通過運行以下命令測試您的安裝:
hugo version您應該看到類似這樣的輸出:
hugo v0.155.3-8a858213b73907e823e2be2b5640a0ce4c04d295+extended linux/amd64 BuildDate=2026-02-08T16:40:42Z VendorInfo=gohugoio顯示可用命令
查看可用命令和標志的列表:
hugo help要獲取子命令的幫助,使用 --help 標志。例如:
hugo server --help構建站點
要構建站點,進入項目目錄並運行:
hugohugo 命令構建您的站點,將文件發布到 public 目錄。要將站點發布到不同的目錄,使用 --destination 標志或在站點配置中設置 publishDir。
Hugo 在構建站點之前不會清除 public 目錄。現有文件會被覆蓋,但不會被刪除。這種行為是有意為之,以防止意外刪除您在構建後可能添加到 public 目錄的文件。
根據您的需求,您可能希望在每次構建之前手動清除 public 目錄的內容。
草稿、未來和過期內容
Hugo 允許您在內容的 front matter 中設置 draft、date、publishDate 和 expiryDate。默認情況下,Hugo 在以下情況下不會發布內容:
draft值為truedate在未來publishDate在未來expiryDate在過去
運行 hugo 或 hugo server 時,可以使用命令行標志覆蓋默認行為:
hugo --buildDrafts # 或 -D
hugo --buildExpired # 或 -E
hugo --buildFuture # 或 -F雖然您也可以在站點配置中設置這些值,但除非所有內容作者都了解並理解這些設置,否則可能會導致不需要的結果。
如上所述,Hugo 在構建站點之前不會清除 public 目錄。根據上述四個條件的 當前 評估,在構建之後,您的 public 目錄可能包含來自以前構建的多余文件。
常見的做法是在每次構建之前手動清除 public 目錄的內容,以刪除草稿、過期和未來內容。
開發和測試站點
在開發布局或創建內容時查看您的站點,進入項目目錄並運行:
hugo serverhugo server 命令構建您的站點並使用最小化的 HTTP 服務器提供頁面。運行 hugo server 時,它將顯示您本地站點的 URL:
Web Server is available at http://localhost:1313/服務器運行時,它會監視項目目錄中資產、配置、內容、數據、布局、翻譯和靜態文件的變化。當檢測到變化時,服務器會重新構建站點並使用 LiveReload 刷新瀏覽器。
大多數 Hugo 構建速度非常快,除非您直接看著瀏覽器,否則可能注意不到變化。
LiveReload
服務器運行時,Hugo 將 JavaScript 注入到生成的 HTML 頁面中。LiveReload 腳本通過 WebSocket 在瀏覽器和服務器之間創建連接。您不需要安裝任何軟件或瀏覽器插件,也不需要任何配置。
自動重定向
在編輯內容時,如果您希望瀏覽器自動重定向到最後修改的頁面,運行:
hugo server --navigateToChanged部署站點
如上所述,Hugo 在構建站點之前不會清除 public 目錄。在每次構建之前手動清除 public 目錄的內容,以刪除草稿、過期和未來內容。
當您准備部署站點時,運行:
hugo這將構建您的站點,將文件發布到 public 目錄。目錄結構看起來像這樣:
public/
├── categories/
│ ├── index.html
│ └── index.xml <-- 此分類的 RSS 源
├── posts/
│ ├── my-first-post/
│ │ └── index.html
│ ├── index.html
│ └── index.xml <-- 此分類的 RSS 源
├── tags/
│ ├── index.html
│ └── index.xml <-- 此標簽的 RSS 源
├── index.html
├── index.xml <-- 站點的 RSS 源
└── sitemap.xml在簡單的托管環境中,您通常通過 ftp、rsync 或 scp 將文件復制到虛擬主機的根目錄,public 目錄的內容就是您需要的所有文件。
我們的大多數用戶將站點部署到 CI/CD 平台,推送到遠程 Git 倉庫會觸發構建和部署。在 托管和部署 部分了解更多信息。