部署到 GitHub Pages
问题出在 git push 阶段,Docusaurus 的部署脚本试图推送到错误的远程仓库地址 https://github.com/facebook/docusaurus.git,而不是你的仓库 https://github.com/Andromedasm/docusaurus-github.git。
这是因为 Docusaurus 的 deploy 脚本默认会使用 origin 远程仓库,但当前仓库的远程地址可能配置错误,或者 GIT_USER 环境变量未正确设置。
解决方法
1. 检查远程仓库地址
运行以下命令,检查仓库的远程地址是否正确:
git remote -v
输出应该类似:
origin https://github.com/Andromedasm/docusaurus-github.git (fetch)
origin https://github.com/Andromedasm/docusaurus-github.git (push)
如果显示的 URL 是 https://github.com/facebook/docusaurus.git,需要重新设置远程仓库地址:
git remote set-url origin https://github.com/Andromedasm/docusaurus-github.git
2. 确保 GIT_USER 设置正确
Docusaurus 使用 GIT_USER 环境变量来标识你的 GitHub 用户。
在终端中运行以下命令(替换 yourusername 为你的 GitHub 用户名):
-
Linux/macOS:
export GIT_USER="Andromedasm"
npm run deploy -
Windows(PowerShell):
$env:GIT_USER="Andromedasm"
npm run deploy
3. 确保权限正确
检查是否可以正常推送代码到远程仓库:
git push origin main
- 如果出现身份验证问题:
-
使用 HTTPS:
- 确保你在 GitHub 上配置了 Personal Access Token(PAT)。
- 设置远程 URL:
将
git remote set-url origin https://<your-token>@github.com/Andromedasm/docusaurus-github.git<your-token>替换为你的 GitHub Personal Access Token。
-
使用 SSH:
- 确保 SSH 密钥已配置:
ssh -T git@github.com - 修改
package.json的deploy脚本:"scripts": {
"deploy": "USE_SSH=true docusaurus deploy"
}
- 确保 SSH 密钥已配置:
-