#!/bin/bash # 以本地为准:上传本地全部文件,强制替换 GitHub 上 v0/fnvtk-5efaab9c(不拉取、不改本地) # 在终端执行: bash scripts/push-to-github.sh set -e cd "$(dirname "$0")/.." # 从卡若AI 账号与API索引 提取 GitHub Token TOKEN_FILE="$HOME/Documents/个人/卡若AI/01_卡资(金)/_团队成员/金盾/账号密码与资料管理/账号与API索引.md" if [ -f "$TOKEN_FILE" ]; then GITHUB_TOKEN=$(grep "Token.*ghp_" "$TOKEN_FILE" | sed -E "s/.*\`([^\`]+)\`.*/\1/") fi if [ -z "$GITHUB_TOKEN" ]; then echo "未找到 GitHub Token,使用 origin 推送(需已配置凭据)" PUSH_URL="origin" else PUSH_URL="https://${GITHUB_TOKEN}@github.com/fnvtk/users.git" echo "已从卡若AI 读取 Token" fi echo "=== 1. 当前状态(本地分支) ===" git status echo "" echo "=== 2. 添加本地全部文件 ===" git add -A git status echo "" echo "=== 3. 提交(有变更才提交) ===" if git diff --cached --quiet; then echo "工作区无新变更,将直接以当前提交强制覆盖远程" else git commit -m "chore: 以本地为准,上传全部并替换 GitHub" echo "提交完成" fi echo "" echo "=== 4. 强制推送到 GitHub,覆盖 v0/fnvtk-5efaab9c ===" # 当前分支(HEAD)覆盖远程 v0/fnvtk-5efaab9c,重叠处一律以本地为准 git push --force "$PUSH_URL" HEAD:v0/fnvtk-5efaab9c echo "" echo "=== 完成 ===" echo "GitHub 已与本地一致: https://github.com/fnvtk/users/tree/v0/fnvtk-5efaab9c"