📘 GitHub 推送教程

本教程适用于 Windows 用户,从配置 SSH 密钥到使用批处理脚本一键推送代码。

🔐 第一步:配置 SSH 密钥

GitHub 推荐使用 SSH 密钥进行安全推送。以下是配置流程:

  1. 打开 Git Bash(或终端)
  2. 生成密钥(按提示操作):
    ssh-keygen -t ed25519 -C "your_email@example.com"
  3. 一路回车,默认生成在 C:\Users\你的用户名\.ssh\id_ed25519
  4. 查看公钥内容:
    cat ~/.ssh/id_ed25519.pub
  5. 复制输出内容,登录 GitHub → Settings → SSH and GPG keys → New SSH key
  6. 粘贴公钥,命名后保存
  7. 测试连接:
    ssh -T git@github.com
    ✅ 如果看到 “Hi 用户名! You've successfully authenticated”,说明配置成功。

✅ 第二步:首次推送代码到 GitHub

以下是首次推送的批处理脚本 push_to_github.bat

@echo off
chcp 65001
setlocal

REM 设置工作目录
cd /d D:\github\winenopy

REM 初始化 Git 仓库(如果尚未初始化)
IF NOT EXIST ".git" (
    git init
)

REM 添加 README.md(首次只推送该文件)
git add README.md

REM 提交更改
git commit -m "first commit"

REM 设置主分支为 main
git branch -M main

REM 添加远程仓库(如果尚未添加)
git remote -v | findstr /C:"origin" >nul
IF ERRORLEVEL 1 (
    git remote add origin git@github.com:xiongli870110-hue/winenopy.git
)

REM 推送到远程仓库
git push -u origin main

echo ✅ 推送完成!
pause

🔄 第三步:后续更新并推送代码

保存为 update_and_push.bat

@echo off
chcp 65001
setlocal

REM 设置项目目录
cd /d D:\github\winenopy

REM 添加所有更改(包括新增、修改、删除)
git add .

REM 获取时间戳作为提交信息
set "ts=%date% %time%"
git commit -m "更新:%ts%"

REM 推送到远程仓库
git push origin main

echo.
echo ✅ 已成功提交并推送到 GitHub
echo 📄 所有更改已同步,容器将自动生成导航页
echo.
pause

📂 项目结构建议

D:\github\winenopy\
│
├─ README.md
├─ Dockerfile
├─ entrypoint.sh
├─ generate_nav.sh
├─ update_hosts.sh
├─ hf_http_private.sh
├─ navpage\
│   ├─ conf.yml
│   └─ nav.html
├─ logs\
│   └─ generate_nav.log
├─ push_to_github.bat
└─ update_and_push.bat

🧠 常见问题

❤️ 致谢

本教程由 Fu Ruijun 项目构建者整理,适用于轻量级容器开发者与 Git 初学者。