cat /etc/yum.repos.d/LocalFile.repo
# LocalFile.repo
#
# This repo is used with a local filesystem repo.
#
# To use this repo place the rpm package in /root/RPMS/yum.repo/Packages.
# Then run: createrepo --database --update /root/RPMS/yum.repo.
#
# To use:
# yum --enablerepo=localfile [command]
#
# or to use only ONLY this repo, do this:
#
# yum --disablerepo=\* --enablerepo=localfile [command]
[localfile]
baseurl=file:///root/RPMS/yum.repo
name=CentOS-$releasever - Local Filesystem repo
# Before persistently enabling this repo see the priority note below.
enabled=0
gpgcheck=0
# When this repo is enabled all packages in repos with priority>5
# will not be updated even when they have a more recent version.
# Be careful with this.
priority=5
您可能还需要手动预安装其他依赖包,例如通常的存储库中提供的 perl-TermReadKey .
-3
在CentOS 6上构建和安装现代Git:
yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
export GIT_VERSION=2.6.4
mkdir /root/git
cd /root/git
wget "https://www.kernel.org/pub/software/scm/git/git-${GIT_VERSION}.tar.gz"
tar xvzf "git-${GIT_VERSION}.tar.gz"
cd git-${GIT_VERSION}
make prefix=/usr/local all
make prefix=/usr/local install
yum remove -y git
git --version # should be GIT_VERSION
12 回答
您可以使用WANDisco的CentOS存储库来安装Git 2.x:for CentOS 6,for CentOS 7
截至2017年8月18日,WANDisco的最新版本为 2.14.1 .
看一下博客here我在其中一条评论中找到了解决方案 . 确保将
rpmforge
存储库添加到CentOS yum并运行flow命令:如果你已经安装了git,那么使用:
相关问题:
注意更新:
感谢Anthony Hatzopoulos,对于
git v1.8x
,你需要使用git18,如:注意更新2:
还要感谢@Axlrod的以下提示和@Hiphip的反馈:
更改
rpmforge.repo
文件以使rpmforge-extras
启用,yum update git
. 否则它抱怨依赖问题 .注意更新3:
http://tecadmin.net/install-git-2-0-on-centos-rhel-fedora/
(并在以后删除时从上面的源粘贴/重新格式化)
Step 1: 安装必需的包
首先,我们需要确保已在您的系统上安装了所需的软件包 . 在编译Git源之前,使用以下命令安装所需的包 .
Step 2: 卸载旧的Git RPM
现在通过RPM文件或Yum包管理器删除之前安装的任何Git . 如果您的旧版本也是通过源代码编译的,则跳过此步骤 .
Step 3: 下载并编译Git源代码
从内核git下载git源代码或者只需使用以下命令下载Git 2.0.4 .
下载并解压缩Git源代码后,使用以下命令编译源代码 .
Step 4. 检查Git版本
完成上述步骤后,您已成功在系统中安装Git . 让我们使用以下命令检查git版本
我还想补充一点,GIT网站上的“入门指南”还包括如何自行下载和编译的说明:
http://git-scm.com/book/en/v2/Getting-Started-Installing-Git
我发现了这个很好且易于遵循的指南,介绍如何下载GIT源代码并自行编译(并安装它) . 如果接受的答案没有提供您想要的版本,请尝试以下说明:
http://tecadmin.net/install-git-2-0-on-centos-rhel-fedora/
(并在以后删除时从上面的源粘贴/重新格式化)
Step 1: 安装必需的包
首先,我们需要确保已在您的系统上安装了所需的软件包 . 在编译Git源之前,使用以下命令安装所需的包 .
Step 2: 卸载旧的Git RPM
现在通过RPM文件或Yum包管理器删除之前安装的任何Git . 如果您的旧版本也是通过源代码编译的,则跳过此步骤 .
Step 3: 下载并编译Git源代码
从内核git下载git源代码或者只需使用以下命令下载Git 2.5.3 .
下载并解压缩Git源代码后,使用以下命令编译源代码 .
Step 4. 检查Git版本
完成上述步骤后,您已成功在系统中安装Git . 使用以下命令检查git版本
我还想补充一点,GIT网站上的“入门指南”还包括如何自行下载和编译的说明:
http://git-scm.com/book/en/v2/Getting-Started-Installing-Git
Rackspace维护ius repository,它包含一个合理的最新git,但必须先删除stock git .
CentOS 7说明:
CentOS 6说明:
我个人倾向于在安装非标准软件和更换分布式组件时为CentOS构建rpm包 . 为此,我建议您使用Mock创建一个干净的构建环境 .
程序是:
获取源RPMS或合适的SPEC文件和原始源tarball . 在这种情况下,可以在以下位置找到适用于CentOS-6的git2X的源RPM包:
http://dl.iuscommunity.org/pub/ius/archive/CentOS/6/SRPMS/
. 其他CentOS版本的软件包也可用 .安装必要的支持软件:
这会产生以下目录结构:
禁用
beta
repos . 启用base
和update
repos .mock --buildsrpm . . .
. 但在这种情况下,我们直接进入二进制构建步骤:这将解析构建依赖关系并将它们(大约95个左右的包)下载到干净的构建根目录中 . 然后它将从提供的SRPM中提取源并构建二进制文件并将其保留在_841026中;或者您提供的任何自定义构建根位置和体系结构 . 这将需要很长时间 . 这个包有很多东西;特别是文件 .
您至少需要
git2u-2.5.3-1.ius.el6.x86_64.rpm
以及您需要的其他支持包(perl-Git2u-2.5.3-1.ius.el6.noarch.rpm
)或您想要的 .此构建具有循环依赖性:
git2u-2.5.3-1.ius.el6.x86_64.rpm
取决于perl-Git2u-2.5.3-1.ius.el6.noarch.rpm
,perl-Git2u-2.5.3-1.ius.el6.noarch.rpm
取决于git2u-2.5.3-1.ius.el6.x86_64.rpm
. 因此,使用rpm
的直接安装将失败 .处理它有两种方法:
我在下面包含了我的
LocalFile.repo
文件,因为它包含有关如何执行此操作的说明并同时提供必要的repo文件 .您可能还需要手动预安装其他依赖包,例如通常的存储库中提供的
perl-TermReadKey
.在CentOS 6上构建和安装现代Git:
在这里添加一个迂回答案 . 我正在努力在RHEL 6.0亚马逊实例上安装git,最终拯救我的是... conda,就像在Anaconda Python中一样 .
我在archives的命令行上安装了conda(在this之后建模的代码):
然后跑了
并安装了一个相对较新的版本git . 今天是2016年12月26日,版本是2.9.3 .
这是我在centos 6上安装git的方法 .
在Centos 6/7上构建最新版本的git
准备系统来构建rpm
对于EL6,请使用:
对于EL7,请使用:
fedpkg
:下载git
git
来源:构建rpm
el6
,对于RHEL7使用el7
./var/lib/mock/epel-7-x86_64/result/
安装最新版本的git
rpm . 注意,您可能需要先从系统中卸载现有版本的git .该指令基于the mailing list post by Todd Zullinger .
as git says:
有很好的教程here . 在我的情况下(Centos7服务器)安装后必须注销并再次登录 .
这可能是无关紧要的 . 这是因为人们不想在主机上构建最新的git,同时他们仍然可以获得最新的git .
我想大多数人不喜欢在CentOS上构建最新的git,因为依赖关系会污染主机,你必须运行很多命令 . 因此,我有一个想法,即在Docker容器中构建git,然后通过docker volume mount安装可执行文件 . 之后,您可以删除图像和容器 .
是的,缺点是你必须安装docker . 但是最少的依赖项被引入主机,您不必安装其他yum repo .
这是我的存储库 . https://github.com/wood1986/docker-library/tree/master/git
在没有大量测试和思考的情况下,用附加存储库替换上游基础存储库可能会非常混乱和危险 . 特别是RPMforge实际上是奄奄一息,并没有获得更新 .
我个人发布了用于构建git 2.4的工具,它包含在一个名为"git24"的软件包中,位于https://github.com/nkadel/git24-srpm/ . 如果你想要的包装区别于,请随意访问和分叉标准系统包,与"samba"和"samba4"包有很大区别 .