跳至主要內容

解决本地和仓库冲突问题

黑静美...大约 2 分钟

解决本地和仓库冲突问题

git push --force origin #强制将本地推送,覆盖仓库的冲突版本 
# origin 是本地匹配远程的默认名字

从调试日志可以确认以下几点:

  1. SSH 认证成功

    • Git 使用了 /Users/yue/.ssh/id_rsa_2,并成功以 Username 的身份认证到了 GitHub。
    • 日志显示 Hi Username! You've successfully authenticated, but GitHub does not provide shell access.,表示 SSH 连接正常。
  2. 问题不是 SSH 配置或密钥

    • SSH 部分工作正常,问题更可能是 Git 仓库的远程地址或仓库权限。

下一步排查与解决

1. 确认远程仓库地址

运行以下命令,查看当前远程地址:

git remote -v

输出应该类似:

origin  git@one.github.com:/Username/YourRepository.git (fetch)
origin  git@two.github.com:/Username/YourRepository.git (push)

检查以下几点:

  • two.github.com 是你为 Username 配置的命名。
  • YourRepository 是你实际想推送的仓库名称。

如果远程地址不正确,请更正为:

git remote set-url origin git@two.github.com:/Username/YourRepository.git

2. 确认仓库是否存在

确保远程仓库 YourRepository 存在并且与你的账户关联。

  1. 打开浏览器,访问以下 URL:

    https://github.com/Username/YourRepository
    
  2. 如果无法访问该页面,请确认:

    • 仓库名称是否拼写正确。
    • 你是否拥有该仓库的访问权限。

3. 测试推送代码

在确认远程地址正确并且仓库存在后,尝试推送代码:

git push origin main

如果仍然失败,请注意错误信息。


4. 重新克隆仓库测试

如果问题持续存在,可以尝试重新克隆仓库以排除配置问题:

  1. 克隆仓库:

    git clone git@two.github.com:YourUseName/YourRepository.git
    
  2. 进入新克隆的仓库目录,并尝试提交和推送更改。


常见问题与解决

  1. Repository not found 错误

    • 确保远程地址拼写正确。
    • 确保你有该仓库的访问权限。
    • 确认 SSH 使用的密钥与该账户相关联。
  2. 权限问题

    • 检查 ~/.ssh/id_rsa_2.pub 是否正确地添加到 GitHub 的 SSH Key 配置中。

如果以上方法仍未解决,请提供以下信息:

  1. git remote -v 的输出。
  2. git push origin main 的完整错误信息。
评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v3.1.3