如何将本地Git分支与服务器远程分支合并?遇Git远程仓库报错求助
问题解决方案
1. 解决「origin 远程仓库已存在」的问题
执行git remote add origin ...时出现该报错,说明本地仓库已配置过名为origin的远程仓库。先查看现有远程仓库信息:
git remote -v
- 若不需要现有
origin,可删除后重新添加:git remote remove origin git remote add origin ssh://myuser@myhost:22/html/myproject - 若需保留现有
origin,可继续使用自定义远程名(如testbranch),但需先修正后续的地址错误。
2. 修复推送失败的核心问题
你第二次添加远程仓库时,SSH地址的用户名与主机名顺序写反了,正确格式应为ssh://用户名@主机地址:端口/仓库路径,错误写法导致Git无法定位到服务器上的仓库。
修正步骤:
# 删除错误配置的testbranch远程仓库 git remote remove testbranch # 添加地址正确的远程仓库 git remote add testbranch ssh://myuser@myhost:22/html/myproject
额外注意事项
如果服务器上的/html/myproject是带工作目录的普通Git仓库,默认不允许直接推送。需在服务器端将其转为裸仓库:
# 登录服务器后执行 cd /html/myproject git config --bool core.bare true
最后执行推送命令:
git push testbranch master
若仍有权限问题,检查:
- 本地SSH公钥是否已添加到服务器的
~/.ssh/authorized_keys文件中 - 服务器上
/html/myproject目录的所属用户是否与SSH登录用户一致,775权限需确保所属用户拥有读写权限
内容的提问来源于stack exchange,提问作者peace_love
相关产品推荐
相关产品推荐

