远程Windows Server Git新项目推送失败(旧项目正常),寻求解决方案
解决Windows环境下Git推送新项目至远程裸仓库失败的问题
以下是针对该问题的排查和解决步骤:
1. 验证远程共享路径的可访问性
- 打开本地资源管理器,输入
//10.1.1.1/projects,确认能看到angular_project_new.git文件夹,且可以正常进入(无权限报错)。 - 如果无法访问,登录远程Windows Server,检查
D:\projects的共享权限:- 右键
projects文件夹 →「属性」→「共享」标签,确保本地PC的用户账号拥有读写权限。 - 同时检查「安全」标签,确认该账号对
angular_project_new.git文件夹有足够的访问权限。
- 右键
2. 修正Git远程地址格式
尝试给远程地址添加file://前缀(Windows环境下Git对共享路径的识别可能需要明确协议):
# 先移除现有远程地址 git remote remove origin # 添加带file协议的远程地址 git remote add origin file:////10.1.1.1/projects/angular_project_new.git # 尝试推送 git push -u origin master
或者使用反斜杠格式(注意命令行中反斜杠需要转义):
git remote remove origin git remote add origin \\\\10.1.1.1\\projects\\angular_project_new.git git push -u origin master
3. 重新创建远程裸仓库
登录远程服务器,确认裸仓库是否完整:
- 进入
D:\projects\angular_project_new.git,检查是否存在config、objects、refs等标准Git裸仓库文件。 - 如果缺失,删除现有仓库并重新创建:
cd D:\projects\ rmdir /s /q angular_project_new.git git init --bare angular_project_new.git
之后回到本地重新设置远程地址并推送。
4. 检查Git版本兼容性
分别在本地和远程服务器执行以下命令,查看Git版本:
git --version
如果两者版本差异过大(比如一个是2.x早期版本,一个是2.40+),建议将双方Git升级到最新稳定版本后再尝试推送。
内容的提问来源于stack exchange,提问作者Uzair A.
相关产品推荐
相关产品推荐

