aileeao / fix_git_push.sh
aihuashanying's picture
修复不能push的问题
386b079
#!/bin/bash
echo "=== Hugging Face Git Push 问题诊断和修复脚本 ==="
echo ""
# 1. 检查当前远程仓库配置
echo "1. 检查当前远程仓库配置:"
git remote -v
echo ""
# 2. 检查 SSH key 是否存在
echo "2. 检查 SSH key:"
if [ -f ~/.ssh/id_rsa.pub ] || [ -f ~/.ssh/id_ed25519.pub ]; then
echo "✓ 找到 SSH public key"
if [ -f ~/.ssh/id_ed25519.pub ]; then
echo "公钥内容 (id_ed25519.pub):"
cat ~/.ssh/id_ed25519.pub
elif [ -f ~/.ssh/id_rsa.pub ]; then
echo "公钥内容 (id_rsa.pub):"
cat ~/.ssh/id_rsa.pub
fi
else
echo "✗ 未找到 SSH public key"
fi
echo ""
# 3. 测试 SSH 连接
echo "3. 测试 SSH 连接到 Hugging Face:"
ssh -T [email protected] 2>&1
echo ""
# 4. 检查 SSH 配置
echo "4. 检查 ~/.ssh/config 配置:"
if [ -f ~/.ssh/config ]; then
cat ~/.ssh/config
else
echo "~/.ssh/config 文件不存在"
fi
echo ""
# 5. 提供解决方案
echo "=== 解决方案 ==="
echo ""
echo "如果 SSH 连接失败,有以下几种解决方案:"
echo ""
echo "方案 1: 切换到 HTTPS(推荐,最简单)"
echo " 运行以下命令将远程仓库从 SSH 切换到 HTTPS:"
echo " git remote set-url origin https://huggingface.co/spaces/YOUR_USERNAME/YOUR_SPACE_NAME"
echo ""
echo "方案 2: 配置 SSH(如果必须使用 SSH)"
echo " 1. 确保 SSH key 已添加到 Hugging Face 账户"
echo " 2. 创建或编辑 ~/.ssh/config 文件,添加以下内容:"
echo " Host hf.co"
echo " HostName hf.co"
echo " User git"
echo " Port 22"
echo " IdentityFile ~/.ssh/id_ed25519"
echo " 3. 设置正确的权限:"
echo " chmod 600 ~/.ssh/config"
echo ""
echo "方案 3: 使用 SSH over HTTPS 端口(如果端口 22 被阻止)"
echo " 在 ~/.ssh/config 中添加:"
echo " Host hf.co"
echo " HostName hf.co"
echo " User git"
echo " Port 443"
echo " IdentityFile ~/.ssh/id_ed25519"
echo ""