You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Git Pull无法识别-4/--ipv4选项的解决方法求助

解决Git 2.15.1中git pull无法使用-4/--ipv4选项的问题

你的问题根源很明确:Git 2.15.1是一个比较老旧的版本,当时git pull命令还没有集成-4/--ipv4的支持,而git push已经先一步实现了这个选项——这是Git功能迭代过程中的阶段性差异。下面给你几个实用的解决方案:

方案1:拆分git pull为git fetch + git merge(快速临时解决)

git pull本质就是git fetch(拉取远程更新)加上git merge(合并到本地分支)的组合命令,而2.15.1版本的git fetch已经支持-4/--ipv4选项。所以你可以分开执行这两步:

# 用IPv4拉取origin仓库的master分支更新
git fetch -4 origin master
# 将拉取的更新合并到本地master分支
git merge origin/master

如果嫌每次敲两条命令麻烦,可以给这个组合设置一个Git别名:

git config --global alias.pull4 '!git fetch -4 origin "$1" && git merge origin/"$1"'

之后直接输入git pull4 master就能完成带IPv4的拉取合并操作,和git pull的效果完全一致。

方案2:全局强制Git使用IPv4(一劳永逸)

如果不想每次都额外加参数,可以配置Git或SSH,让所有针对BitBucket的连接默认使用IPv4:

如果你用HTTPS协议连接仓库

执行以下命令,强制Git的所有HTTP请求使用IPv4:

git config --global http.ipv4 true

设置完成后,不管是git pull还是git push,都会自动优先使用IPv4,无需再手动加-4选项。

如果你用SSH协议连接仓库

如果你的远程仓库地址是SSH格式(比如git@bitbucket.org:your-username/your-repo.git),需要修改SSH配置:

  1. 打开(如果不存在就创建)~/.ssh/config文件
  2. 添加以下内容:
Host bitbucket.org
  AddressFamily inet

inet表示强制使用IPv4地址族,这样SSH连接BitBucket时会自动跳过IPv6,直接用IPv4建立连接,从根源上解决网络不可达的问题。

方案3:升级Git版本(彻底解决功能缺失)

Ubuntu 14.04默认软件源里的Git版本确实偏旧,升级到较新的版本后,git pull就会原生支持-4/--ipv4选项。你可以通过官方PPA来升级:

  1. 添加Git官方PPA源:
sudo add-apt-repository ppa:git-core/ppa
sudo apt-get update
  1. 安装升级Git:
sudo apt-get install git

升级完成后,你就可以直接使用git pull -4 origin master或者git pull --ipv4 origin master,和git push的用法保持一致了。

内容的提问来源于stack exchange,提问作者Samkit Jain

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 07:59:14