当我去Gits 下载部分它提到最新版本是 1.8,我可以在yum install git
Fedora 上安装它。我正在运行 CentOS6,所以该命令也适用于我,但 yum 告诉我:
Setting up Install Process
Package git-1.7.1-2.el6_0.1.x86_64 already installed and latest version
Nothing to do
我的 yum 指向的是旧存储库吗?还是我做错了什么?
谢谢!
编辑:我了解供应商并不总是更新他们的软件包列表,那么这是否意味着 git 网站上的文档是不正确的,因为他们告诉我使用 yum 下载它,但供应商还没有更新他们的软件包列表?
答案1
下载源代码并自行编译非常简单,我甚至发现 RPMForge 方法有点麻烦。
下载Git 2.11来源和
make configure
./configure --prefix=/usr
make all
sudo make install install-doc install-html
在 make 完全成功之前,我需要安装一些依赖项。
sudo yum install libcurl-devel zlib-devel asciidoc xmlto
答案2
以下是对我有用的方法:
- 启用 RPMForge
- yum install yum-plugin-priorities # 通过以下方式安装 yum 优先级插件
- 通过编辑 /etc/yum.repos.d/rpmforge.repo 启用 RPM Forge Extras 存储库,并在 rpmforge-extras 部分中将 enabled 更改为 1。我还通过在两个部分中添加 priority = 1 将两个 rpmforge 存储库的优先级提高到 1。
- yum 删除 git
- yum 全部清理 && yum 更新 && yum 安装 git
答案3
您的操作系统供应商(CentOS 项目)可能尚未为最新版本的 git 构建软件包(或者他们可能没有计划这样做,而是打算在 CentOS 6 中继续使用 1.7.x 系列)。
软件不会在作者发布软件的当天就神奇地出现在打包系统中 - 软件包需要构建、测试、批准和推送。如果您需要上游供应商未提供的版本,您可以随时自行构建...
答案4
CentOS 6 支持较新的编译器和工具的“并行”世界,不会破坏较旧的版本。你想要
yum install devtoolset-2
安装完成后,执行
scl enable devtoolset-2 bash
这将修改您的路径。您将在 中获得旧版本的 git /usr/bin/git
,在 中获得新版本/opt/rh/..../git
。较新的版本是 1.8.4/。
您还可以获得更新的 g++ (4.8)等等。
您还需要最新的 devtoolset-2。有关 devtoolset-2 的详细信息可在另一个答案中找到:https://superuser.com/questions/381160/how-to-install-gcc-4-7-x-4-8-x-on-centos/676337#676337