¿Cómo se puede instalar git en CENTOS 5.5?
centos5 (14)
¿De la fuente? De los repos? La forma más fácil es usar los repos: sudo yum install git
debería hacerlo. Primero puede ser necesario configurar un repositorio adicional como EPEL primero si los repos principales no proporcionan git.
Si desea instalar desde el origen, puede probar these instrucciones. Si tienes yum-utils
instalado, es más fácil que eso, también **:
sudo yum build-dep git
wget http://kernel.org/pub/software/scm/git/<latest-git-source>.tar.gz
tar -xvjf <latest-git>.tar.gz
cd <git>
make (possibly a ./configure before this)
sudo make install
** Sustituya las partes incluidas en <>
con las rutas que necesita. El procedimiento exacto puede variar levemente ya que no he compilado git desde la fuente, personalmente (puede haber un script de configuración, por ejemplo). Si no tiene idea de lo que estoy hablando, entonces tal vez quiera instalar desde el repositorio según mi primera sugerencia.
¿Cómo puedo instalar git en la máquina CENTOS 5.5? Intenté instalarlo desde yum pero obtuve el siguiente mensaje.
root@host [~]# sudo yum install git
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* addons: centos.mirrors.tds.net
* base: mirror.ubiquityservers.com
* extras: mirrors.serveraxis.net
* updates: pubmirrors.reflected.net
addons | 951 B 00:00
base | 2.1 kB 00:00
extras | 2.1 kB 00:00
updates | 1.9 kB 00:00
Excluding Packages in global exclude list
Finished
Setting up Install Process
No package git available.
Nothing to do
root@host [~]#
Acabo de instalar git usando las siguientes instrucciones:
Instalar EPEL V5
#rpm -Uvh http://archives.fedoraproject.org/pub/archive/epel/5/x86_64/epel-release-5-4.noarch.rpm
Instalar Git
# yum install git git-daemon
Comprobar
# git --version
git version 1.8.2.3
Opcionalmente, instale la GUI de Git
# yum install git-gui
Para i386 sustituya x86_64 por i386 en la URL en el paso # 1.
#rpm -Uvh http://archives.fedoraproject.org/pub/archive/epel/5/i386/epel-release-5-4.noarch.rpm
Edite /etc/yum.repos.d/Centos*
para que todas las líneas que tienen enabled = 0
lugar tengan enabled = 1
.
Esto funcionó para mí en CentOS:
Instalar dependencias:
yum -y install zlib-devel openssl-devel cpio expat-devel gettext-devel
Obtener Git
cd /usr/local/src wget http://code.google.com/p/git-core/downloads/detail?name=git-1.7.8.3.tar.gz tar xvzf git-1.7.8.3.tar.gz cd git-1.7.8.3
Construye Git
./configure make make install
Estoy seguro de que esta pregunta está a punto de morir ahora que RHEL 5 está llegando al final de la vida, pero la respuesta parece haber sido mucho más simple ahora:
sudo yum install epel-release
sudo yum install git
funcionó para mí en una nueva instalación de CentOS 5.11.
OK, hay más que eso, necesitas zlib. zlib es parte de CentOS, pero necesita el formulario de desarrollo para obtener zlib.h ... observe que el nombre yum del desarrollo de zlib es bastante diferente posiblemente que para apt-get en ubuntu / debian, lo que sigue realmente funciona con mi versión de CentOS
en particular, usted hace ./configure en git, luego prueba make, y la primera compilación falla con la falta de zlib.h
Usé un procedimiento de dos pasos para resolver esto a) Tengo RPMFORGE para mi versión de CentOS
Ver: www.centos.org/modules/newbb/viewtopic.php?topic_id=18506&forum=38 y esto: wiki.centos.org/AdditionalResources/Repositories/RPMForge
En mi caso [como root, o con sudo]
$ wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm
$ rpm -K rpmforge-release-0.5.2-2.el5.rf.*.rpm
$ rpm -i rpmforge-release-0.5.2-2.el5.rf.*.rpm
## Note: the RPM for rpmforge is small (like 12.3K) but don''t let that fool
## you; it augments yum the next time you use yum
## [this is the name that YUM found] (still root or sudo)
$ yum install zlib-devel.x86_64
## and finally in the source directory for git (still root or sudo):
$ ./configure (this worked before, but I ran it again to be sure)
$ make
$ make install
(esta instalación lo coloca de forma predeterminada en /usr/local/bin/git
... no es mi elección favorita, pero está bien para el valor predeterminado) ... ¡y git funciona bien!
Para instalar git
- instalar el último Epel-Release
rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
- Instalar git desde el repositorio
yum instalar git
Parece que los repositorios de CentOS 5 están desapareciendo. La mayoría de los que se mencionan en esta pregunta ya no están en línea, no parecen tener Git o tienen una versión realmente antigua de Git. A continuación se muestra el script que utilizo para construir OpenSSL, IDN2, PCRE, cURL y Git de las fuentes. Los protocolos git://
y https://
estarán disponibles para la clonación.
Con el tiempo, los nombres de los archivos deberán ser actualizaciones. Por ejemplo, a partir de este escrito, openssl-1.0.2k.tar.gz
es el último disponible en la familia 1.0.2.
La respuesta de Dale Anderson utilizando los repos de RHEL se ve bien por el momento, pero es una versión bastante antigua. Red Hat proporciona la versión 1.8 de Git, mientras que el siguiente script crea 2.12 a partir de las fuentes.
#!/usr/bin/env bash
# OpenSSL installs into lib64/, while cURL installs into lib/
INSTALL_ROOT=/usr/local
INSTALL_LIB32="$INSTALL_ROOT/lib"
INSTALL_LIB64="$INSTALL_ROOT/lib64"
OPENSSL_TAR=openssl-1.0.2k.tar.gz
OPENSSL_DIR=openssl-1.0.2k
ZLIB_TAR=zlib-1.2.11.tar.gz
ZLIB_DIR=zlib-1.2.11
UNISTR_TAR=libunistring-0.9.7.tar.gz
UNISTR_DIR=libunistring-0.9.7
IDN2_TAR=libidn2-0.16.tar.gz
IDN2_DIR=libidn2-0.16
PCRE_TAR=pcre2-10.23.tar.gz
PCRE_DIR=pcre2-10.23
CURL_TAR=curl-7.53.1.tar.gz
CURL_DIR=curl-7.53.1
GIT_TAR=v2.12.2.tar.gz
GIT_DIR=git-2.12.2
###############################################################################
# I don''t like doing this, but...
read -s -p "Please enter password for sudo: " SUDO_PASSWWORD
###############################################################################
echo
echo "********** zLib **********"
wget "http://www.zlib.net/$ZLIB_TAR" -O "$ZLIB_TAR"
if [[ "$?" -ne "0" ]]; then
echo "Failed to download zLib"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
rm -rf "$ZLIB_DIR" &>/dev/null
tar -xzf "$ZLIB_TAR"
cd "$ZLIB_DIR"
LIBS="-ldl -lpthread" ./configure --enable-shared --libdir="$INSTALL_LIB64"
if [[ "$?" -ne "0" ]]; then
echo "Failed to configure zLib"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
make -j 4
if [ "$?" -ne "0" ]; then
echo "Failed to build zLib"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
echo "$SUDO_PASSWWORD" | sudo -S make install
cd ..
###############################################################################
echo
echo "********** Unistring **********"
# https://savannah.gnu.org/bugs/?func=detailitem&item_id=26786
wget "https://ftp.gnu.org/gnu/libunistring/$UNISTR_TAR" --no-check-certificate -O "$UNISTR_TAR"
if [[ "$?" -ne "0" ]]; then
echo "Failed to download IDN"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
rm -rf "$UNISTR_DIR" &>/dev/null
tar -xzf "$UNISTR_TAR"
cd "$UNISTR_DIR"
LIBS="-ldl -lpthread" ./configure --enable-shared --libdir="$INSTALL_LIB64"
if [[ "$?" -ne "0" ]]; then
echo "Failed to configure IDN"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
make -j 4
if [ "$?" -ne "0" ]; then
echo "Failed to build IDN"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
echo "$SUDO_PASSWWORD" | sudo -S make install
cd ..
###############################################################################
echo
echo "********** IDN **********"
# https://savannah.gnu.org/bugs/?func=detailitem&item_id=26786
wget "https://alpha.gnu.org/gnu/libidn/$IDN2_TAR" --no-check-certificate -O "$IDN2_TAR"
if [[ "$?" -ne "0" ]]; then
echo "Failed to download IDN"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
rm -rf "$IDN2_DIR" &>/dev/null
tar -xzf "$IDN2_TAR"
cd "$IDN2_DIR"
LIBS="-ldl -lpthread" ./configure --enable-shared --libdir="$INSTALL_LIB64"
if [[ "$?" -ne "0" ]]; then
echo "Failed to configure IDN"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
make -j 4
if [ "$?" -ne "0" ]; then
echo "Failed to build IDN"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
echo "$SUDO_PASSWWORD" | sudo -S make install
cd ..
###############################################################################
echo
echo "********** OpenSSL **********"
wget "https://www.openssl.org/source/$OPENSSL_TAR" -O "$OPENSSL_TAR"
if [[ "$?" -ne "0" ]]; then
echo "Failed to download OpenSSL"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
rm -rf "$OPENSSL_DIR" &>/dev/null
tar -xzf "$OPENSSL_TAR"
cd "$OPENSSL_DIR"
# OpenSSL and enable-ec_nistp_64_gcc_12 option
IS_X86_64=$(uname -m 2>&1 | egrep -i -c "(amd64|x86_64)")
CONFIG=./config
CONFIG_FLAGS=(no-ssl2 no-ssl3 no-comp shared "-Wl,-rpath,$INSTALL_LIB64" --prefix="$INSTALL_ROOT" --openssldir="$INSTALL_ROOT")
if [[ "$IS_X86_64" -eq "1" ]]; then
CONFIG_FLAGS+=("enable-ec_nistp_64_gcc_128")
fi
"$CONFIG" "${CONFIG_FLAGS[@]}"
if [[ "$?" -ne "0" ]]; then
echo "Failed to configure OpenSSL"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
make depend
make -j 4
if [ "$?" -ne "0" ]; then
echo "Failed to build OpenSSL"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
echo "$SUDO_PASSWWORD" | sudo -S make install_sw
cd ..
###############################################################################
echo
echo "********** PCRE **********"
# https://savannah.gnu.org/bugs/?func=detailitem&item_id=26786
wget "https://ftp.pcre.org/pub/pcre//$PCRE_TAR" --no-check-certificate -O "$PCRE_TAR"
if [[ "$?" -ne "0" ]]; then
echo "Failed to download PCRE"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
rm -rf "$PCRE_DIR" &>/dev/null
tar -xzf "$PCRE_TAR"
cd "$PCRE_DIR"
make configure
CPPFLAGS="-I$INSTALL_ROOT/include" LDFLAGS="-Wl,-rpath,$INSTALL_LIB64 -L$INSTALL_LIB64" /
LIBS="-lidn2 -lz -ldl -lpthread" ./configure --enable-shared --enable-pcre2-8 --enable-pcre2-16 --enable-pcre2-32 /
--enable-unicode-properties --enable-pcregrep-libz --prefix="$INSTALL_ROOT" --libdir="$INSTALL_LIB64"
if [[ "$?" -ne "0" ]]; then
echo "Failed to configure PCRE"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
make all -j 4
if [ "$?" -ne "0" ]; then
echo "Failed to build PCRE"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
echo "$SUDO_PASSWWORD" | sudo -S make install
cd ..
###############################################################################
echo
echo "********** cURL **********"
# https://savannah.gnu.org/bugs/?func=detailitem&item_id=26786
wget "https://curl.haxx.se/download/$CURL_TAR" --no-check-certificate -O "$CURL_TAR"
if [[ "$?" -ne "0" ]]; then
echo "Failed to download cURL"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
rm -rf "$CURL_DIR" &>/dev/null
tar -xzf "$CURL_TAR"
cd "$CURL_DIR"
CPPFLAGS="-I$INSTALL_ROOT/include" LDFLAGS="-Wl,-rpath,$INSTALL_LIB64 -L$INSTALL_LIB64" /
LIBS="-lidn2 -lssl -lcrypto -lz -ldl -lpthread" /
./configure --enable-shared --with-ssl="$INSTALL_ROOT" --with-libidn2="$INSTALL_ROOT" --libdir="$INSTALL_LIB64"
if [[ "$?" -ne "0" ]]; then
echo "Failed to configure cURL"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
make -j 4
if [ "$?" -ne "0" ]; then
echo "Failed to build cURL"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
echo "$SUDO_PASSWWORD" | sudo -S make install
cd ..
###############################################################################
echo
echo "********** Git **********"
wget "https://github.com/git/git/archive/$GIT_TAR" -O "$GIT_TAR"
if [[ "$?" -ne "0" ]]; then
echo "Failed to download Git"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
rm -rf "$GIT_DIR" &>/dev/null
tar -xzf "$GIT_TAR"
cd "$GIT_DIR"
make configure
CPPFLAGS="-I$INSTALL_ROOT/include" LDFLAGS="-Wl,-rpath,$INSTALL_LIB64,-rpath,$INSTALL_LIB32 -L$INSTALL_LIB64 -L$INSTALL_LIB32" /
LIBS="-lidn2 -lssl -lcrypto -lz -ldl -lpthread" ./configure --with-openssl --with-curl --with-libpcre --prefix="$INSTALL_ROOT"
if [[ "$?" -ne "0" ]]; then
echo "Failed to configure Git"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
make all -j 4
if [ "$?" -ne "0" ]; then
echo "Failed to build Git"
[[ "$0" = "$BASH_SOURCE" ]] && exit 1 || return 1
fi
MAKE=make
MAKE_FLAGS=(install)
if [[ ! -z `which asciidoc 2>/dev/null | grep -v ''no asciidoc''` ]]; then
if [[ ! -z `which xmlto 2>/dev/null | grep -v ''no xmlto''` ]]; then
MAKE_FLAGS+=("install-doc" "install-html" "install-info")
fi
fi
echo "$SUDO_PASSWWORD" | sudo -S "$MAKE" "${MAKE_FLAGS[@]}"
cd ..
###############################################################################
echo
echo "********** Cleanup **********"
rm -rf "$OPENSSL_TAR $OPENSSL_DIR $UNISTR_TAR $UNISTR_DIR $CURL_TAR $CURL_DIR"
rm -rf "$PCRE_TAR $PCRE_DIR $ZLIB_TAR $ZLIB_DIR $IDN2_TAR $IDN2_DIR $GIT_TAR $GIT_DIR"
[[ "$0" = "$BASH_SOURCE" ]] && exit 0 || return 0
Probé algunos métodos de esta pregunta y todos fallaron en mis CentOs, ya sea por los repositorios incorrectos o por los archivos que faltaban.
Este es el método que funciona para mí (al instalar la versión 1.7.8):
yum -y install zlib-devel openssl-devel cpio expat-devel gettext-devel
wget http://git-core.googlecode.com/files/git-1.7.8.tar.gz
tar -xzvf ./git-1.7.8.tar.gz
cd ./git-1.7.8
./configure
make
make install
Es posible que desee descargar una versión diferente desde aquí: http://code.google.com/p/git-core/downloads/list
Sólo:
sudo rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
sudo yum install git-core
Si está utilizando CentOS, los repositorios de yum
integrados no parecen tener git
incluidos y, como tal, deberá agregar un repositorio adicional al sistema. Para mis servidores, encontré que el repositorio de Webtatic parece estar razonablemente actualizado y la instalación de git
será la siguiente:
# Add the repository
rpm -Uvh http://repo.webtatic.com/yum/centos/5/latest.rpm
# Install the latest version of git
yum install --enablerepo=webtatic git-all
Para evitar errores de Missing Dependency: perl(Git)
:
yum install --enablerepo=webtatic --disableexcludes=main git-all
Solo estoy actualizando esto para 2017 y más adelante, cuando CentOS 5 haya alcanzado EOL y la URL para EPEL haya cambiado:
sudo rpm -Uvh http://archives.fedoraproject.org/pub/archive/epel/5/x86_64/epel-release-5-4.noarch.rpm
sudo yum install git
Esto te da git 1.8.2.3
yum -y install zlib-devel openssl-devel cpio expat-devel gettext-devel
Get the required version of GIT from https://www.kernel.org/pub/software/scm/git/
wget https://www.kernel.org/pub/software/scm/git/{version.gz}
tar -xzvf git-version.gz
cd git-version
./configure
make
make install
yum -y install zlib-devel openssl-devel cpio expat-devel gettext-devel gcc
wget http://git-core.googlecode.com/files/git-1.7.11.4.tar.gz
tar zxvf git-1.7.11.4.tar.gz
cd git-1.7.11.4
./configure
make
make install