Skip to main content

docusaurus 部署的小問題

· 2 min read
Smile Hsu
Full-stack developer ,Data Analyst

前言:

目前我使用 Docusaurus 來寫Blog已經過三個月,只有剛開始的時候很認真用
後來少用就開始忘東忘西,我目前的網站是放置在Github Pages上面
設定檔都正確,網站資料上傳更新也OK,但常常要上傳資料時碰到 SSH issue的問題
所以請ChatGPT 幫我處理這個問題

解決 Docusaurus 部署錯誤:GIT_USER / USE_SSH

我問: Error: Please set the GIT_USER environment variable, or explicitly specify USE_SSH instead!

以下是ChatGPT的回答

這個錯誤通常出現在 Docusaurus 部署到 GitHub Pages 時,因為需要 GIT_USER 或設定 USE_SSH 來做 git push。


✅ 1. 用 HTTPS Token(推薦)

在 CMD / PowerShell 輸入:

set GIT_USER=<你的 GitHub 使用者名稱>

例:

set GIT_USER=smilehsu

然後執行:

npm run deploy

注意:如果 GitHub 問密碼,要輸入 Personal Access Token(PAT),不是 GitHub 密碼。


✅ 2. 用 SSH(不用 GIT_USER)

set USE_SSH=true

然後:

npm run deploy

但你的 Git repo remote 也要是 SSH:

git remote set-url origin git@github.com:smilehsu/你的repo.git

✅ 3. 永久設定(避免每次開機都要輸入)

在 CMD 中使用(我使用這個方案):

setx GIT_USER "smilehsu"

或若你要用 SSH:

setx USE_SSH "true"
[System.Environment]::SetEnvironmentVariable("GIT_USER", "smilehsu", "User")

或 SSH:

[System.Environment]::SetEnvironmentVariable("USE_SSH", "true", "User")

⚠ 注意:

  • setx 設定後需要 重新開啟 CMD 或重新登入 才會生效

  • 舊視窗不會自動更新環境變數

  • setx 會寫入 Windows 使用者環境變數(User variables)


🔍 常見原因

問題原因
GIT_USER 沒設Docusaurus 需要你的 GitHub username 推上 gh-pages
使用 HTTPS 但沒提供 GIT_USER必須設 GIT_USER
使用 SSH 但沒設 USE_SSH需加上環境變數

🔧 如果你需要協助

我可以幫你:
✔ 檢查 deployment 設定
✔ 看你的 docusaurus.config.js
✔ 設定 deploy scripts

以上是ChatGPT的回覆


🎯 我實作的流程

setx USE_SSH "true"
# 上面指令只執行一次,執行完畢關掉CMD視窗,重新開一個CMD

#以後網站內容存檔後,只要執行下面的指令
npm run deploy

之後更新網站內容,不會再跳出錯誤訊息,網站也能順利更新。


🧡 製作資訊

📦 Made with ❤️ by ChatGPT
📜 MIT License © 2025