Visual Studio无法执行git push,但命令行可正常推送的问题排查
解决Visual Studio中Git推送提示"无效远程名称origin"的问题
在Visual Studio中操作Git仓库时,提交、拉取操作正常,但推送时出现以下错误:
Pushing master
Invalid remote name "origin": invalid remote name: "F:\<git_repo_path_on_disk>\origin"
Error: failed to push some refs to 'https://github.com/<correct_repo_url>.git'
Error encountered while pushing to the remote repository: PushCommand.ExecutePushCommand
Failed to push to the remote repository. See the Output window for more details.
.git/config配置无明显异常,且命令行推送可正常完成,这是Visual Studio的Git集成出现缓存或配置冲突问题,以下是具体解决步骤:
解决方案
1. 清除Visual Studio的Git缓存
- 完全关闭所有Visual Studio实例
- 找到对应VS版本的Git缓存目录并删除所有内容:
- VS 2022:
%LOCALAPPDATA%\Microsoft\Team Foundation\17.0\Cache - VS 2019:
%LOCALAPPDATA%\Microsoft\Team Foundation\16.0\Cache - 旧版本:
%LOCALAPPDATA%\Microsoft\Team Foundation\8.0\Cache
- VS 2022:
- 重启Visual Studio并重新加载仓库
2. 确认VS使用系统Git而非内置版本
- 打开Visual Studio,依次点击工具→选项→源代码管理→Git全局设置
- 在"Git可执行文件路径"中,确保指向系统安装的Git(例如
C:\Program Files\Git\cmd\git.exe) - 保存设置后重启VS
3. 重新添加远程仓库(若上述方法无效)
方法一:通过VS界面操作
- 打开VS的Git菜单→管理分支→远程
- 选中现有"origin"远程并删除
- 点击"添加",输入远程名称"origin"和正确的仓库URL,确认添加
方法二:通过命令行操作
进入仓库目录,执行以下命令:
git remote remove origin git remote add origin https://github.com/<correct_repo_url>.git
回到Visual Studio,点击Git面板的"刷新"按钮重新加载仓库
原因说明
这类问题通常是Visual Studio的Git集成组件缓存了错误的远程信息,或是内置Git版本与系统Git的配置存在冲突,导致VS错误地将远程名称"origin"解析为本地路径。而命令行直接调用系统Git,使用的是正确的配置,因此可以正常推送。
内容的提问来源于stack exchange,提问作者Michael Pratt
相关产品推荐
相关产品推荐

