Git 无法提交,拉取等的问题大全(包含IDEA操作Git的问题)

文章讲述了在IDEA中遇到的Git操作问题,包括内网代理导致的GitPull和GitPush失败,以及因HTTPS代理设置和403权限错误引起的GitClone问题。解决方案包括配置IDEA的代理设置,清理或修改Git的HTTP/HTTPS代理设置,以及使用Token解决权限问题。

IDEA无法使用Git Pull问题一 之 【内网代理问题】

一、问题描述

我们开发项目时,经常会和第三方接口打交道,有些第三方项目为了安全起见,会把项目部署在"内网"环境,不对外暴露,通常会提供VPN代理才能访问到资源。
而在项目中我就因为这个而遇到了一个问题,你就是IDEA 配置Git 后无法进行 pull 和 push 操作 这个主要是因为对外网进行了限制 导致的问题

在这里插入图片描述


Connecting to a new host gitlab.GZCASCADE.COM:22 that has the key 92:f1:bc:5b:9d:f6:De:f9:d9:20:52:62:e6:62:d1:55 (type ssh-rsa).
Do you want to add this host to known hosts database?

看到上面的问题我们的第一反应就是 port 22 被占用
我们使用 netstat -aon|findstr"22" 查询一下确实是有好几个应用在占用端口,但同时好像是轮询使用的,并不是一直占着端口的

在这里插入图片描述

然后使用 Git Base 进行Git 的pull 和push 操作 发现是OK的 ,那问题就出来

在这里插入图片描述

接着我们在使用 Git Base 模拟 IDEA 的Git 测试连接 gitlab 发现问题 也是 这个样子

ssh -T git@altssh.gitlab.com

在这里插入图片描述

那接下来大概问题确定了 ,应该就是内网设置了域,在内网中的IDEA无法请求到内网的 gitlab

二、解决办法

1、配置 IDEA 代理服务器

选择File --> Settings --> 搜索HTTP Proxy --> 选择Manual proxy configuration --> 选择HTTP输入ip和端口 --> 点击Apply

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
2、配置Git SSH 构建类型

配置完上面的步骤后在使用IDEA pull 就出现如下问题

在这里插入图片描述

Fetch failed 
Could not read from remote repository.

那我们接下来继续处理,修改一下SSH 构建类型

在这里插入图片描述

到此问题就解决了

IDEA无法使用Git Pull问题二 之 【http/https代理】

一、问题描述

今天从Gitee想要push代码,发现报错了:fatal: unable to access 'https://gitee.com/zhang-zhixi/emos-wx.git/': Failed
这里来记录一下,可能是因为前两天关闭了:ICS、主机网络服务导致的。

fatal: unable to access 'https://gitee.com/zhang-zhixi/emos-wx.git/': Failed

二、解决办法

1、删除Git的凭据管理器

Windows搜索:凭据管理器。从中将gitee相关的进行删除

在这里插入图片描述
2、取消http/https代理

因为我的Git项目拉取的时候是通过https方式进行pull的。所以我现在执行一下这两条命令:

	git config --global --unset http.proxy 
	git config --global --unset https.proxy

然后就可以正常的拉取跟推送本地代码了。

在这里插入图片描述

IDEA无法使用Git Clone问题一 之 【403无权限访问】

一、问题描述

我的电脑一直录入的是我的gitee账号,平常和同事协作开发,git pull、git clone等git操作都没有报错过。但是,今天要git clone另一个gitee账号的项目代码,出现报错403(如图1),我们一起来看看原因和解决办法。

fatal: unable to access ‘https://gitee.com/XXX.git/‘: The requested returned error: 403
$ git clone https://gitee.com/Family-Steward-51/home-crm.git
Cloning into 'home-crm'...
remote: [session-534c6184] Oauth: Access token is expired
fatal: unable to access 'https://gitee.com/Family-Steward-51/home-crm.git/': The requested URL returned error: 403

在这里插入图片描述
在这里插入图片描述

问题分析:403常见原因就是无权访问。

二、解决办法

2.1、Access denied token

在这里插入图片描述

在这里插入图片描述

使用Token

1、在推送代码时,使用生成的token登录,把上面生成的token粘贴到输入密码的位置,然后即可成功push代码

2、关联远程仓库时,项目地址上需拼接上刚才生成token

git remote add origin [你的项目地址(包含token)]

2.2、Windows 多git仓库 账号密码错误

2.1.1、打开控制面板

我是Windows10的系统,直接输入打开即可,具体的打开控制面板的方式各位看官可以自行选择。

在这里插入图片描述

2.1.2、选择“用户账户”

在这里插入图片描述

2.1.3、选择“管理Windows凭据”

在这里插入图片描述

2.1.4、点击编辑更换账号密码

在这里插入图片描述

2.1.5、修改完后保存即可

在这里插入图片描述
到此,就可以继续正常执行git操作了。如果有报错,重启CMD终端窗口或者计算机在进行git操作。

<think>嗯,用户遇到了旧版IntelliJ IDEAGit代码后无法切换分支的问题。我需要先理解这个问题的可能原因,然后一步步给出解决方案。首先,旧版本的IDEA可能存在兼容性问题,特别是如果Git版本较新的话。可能需要建议用户检查IDEAGit的版本是否匹配。其次,分支切换失败可能有多种原因,比如本地分支冲突、未提交的更改或者远程分支未正确。用户可能需要先获最新的远程分支信息,或者清理本地无效的分支引用。另外,缓存问题也可能导致分支无法切换,所以建议用户尝试清除IDEA的缓存并重启。如果问题依旧,可能需要手动通过命令行切换分支,这可以绕过IDE的潜在问题。最后,如果所有方法都无效,可能需要升级IDEA到较新版本,毕竟旧版软件的支持有限。同时,生成的相关问题应该覆盖常见的原因和解决方法,帮助用户全面排查问题。</think>### IntelliJ IDEA旧版本Git分支切换问题解决方案 #### 1. 更新Git版本兼容性 旧版IDEA(如2018.x及更早版本)可能无法兼容Git 2.23+版本,建议通过以下命令降级Git: ```bash git --version # 若版本高于2.23,推荐安装Git 2.22.x ``` 同时检查IDEAGit插件是否为最新可用版本[^1] #### 2. 刷新远程分支列表 在Terminal中执行: ```bash git fetch --prune git remote update origin --prune ``` 随后通过VCS > Git > Branches菜单查看更新后的分支列表 #### 3. 清理无效分支引用 当存在冲突的分支头时: ```bash git gc --prune=now git remote prune origin ``` 这会清除已删除远程分支的本地引用[^2] #### 4. 强制分支签出 通过IDEA底部终端执行: ```bash git checkout -f branch_name # 或强制重置 git reset --hard HEAD ``` #### 5. 缓存清理步骤 File > Invalidate Caches: 1. 勾选"Clear file system cache and Local History" 2. 选择"Invalidate and Restart" 3. 重启后重新配置Git路径 #### 6. 版本升级建议 对于长期未更新的IDEA(如低于2019.3版本),建议至少升级到2020.3.x LTS版本,该版本包含以下改进: - 增强的Git分支管理界面 - 优化的冲突解决工具 - 改进的SSH认证流程
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT小郭.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值