Jak zainstalować najnowszą wersję git na CentOS 7.x / 6.x


232

Użyłem zwykłego:

yum install git

Nie zainstalował najnowszej wersji git na moim CentOS 6. Jak mogę zaktualizować do najnowszej wersji git dla CentOS 6? Rozwiązanie może mieć zastosowanie do nowszych wersji CentOS, takich jak CentOS 7.


11
Tak to jest. Zadawanie pytań i udzielanie odpowiedzi na nie jest całkowicie w granicach, gdy są to przydatne informacje, na które nie udzielono odpowiedzi.
Tin Man

Odpowiedzi:


337

Możesz użyć repozytorium CentOS WANDisco, aby zainstalować Git 2.x: dla CentOS 6 , dla CentOS 7

  1. Zainstaluj pakiet repozytorium WANDisco:

    yum install http://opensource.wandisco.com/centos/6/git/x86_64/wandisco-git-release-6-1.noarch.rpm
    - or -
    yum install http://opensource.wandisco.com/centos/7/git/x86_64/wandisco-git-release-7-1.noarch.rpm
    - or -
    yum install http://opensource.wandisco.com/centos/7/git/x86_64/wandisco-git-release-7-2.noarch.rpm
    
  2. Zainstaluj najnowszą wersję Git 2.x:

    yum install git
    
  3. Sprawdź zainstalowaną wersję Gita:

    git --version
    

Od 02 marca 2020 najnowsza dostępna wersja WANDisco to 2.22.0 .


9
Ta odpowiedź musi być zastosowana. Zastosowana już odpowiedź z --disablerepo=base,updatesnie działa dla mnie.
Kirby,

1
A FWIW, od 08.08.2016, wersja WANDisco Git jest w wersji 2.10; zgodnie z oficjalnymi wydaniami Git SCM.
JakeGould

6
Ten działał dla mnie. Znacznie prostsze niż zaakceptowana odpowiedź.
Ben Watson,

1
Od lutego 2019 r. Wydaje się, że to repozytorium przestało otrzymywać aktualizacje: najnowszy git to v2.20.1, ale repo ma tylko v2.18.0
IanB

1
klucz pgp nie jest dostępny przez https, czy ktoś może go zweryfikować?
user3338098,

134

Patrząc na blog tutaj znalazłem rozwiązanie w jednym z komentarzy. Upewnij się, że rpmforgerepozytorium zostało dodane do yum CentOS i po prostu uruchom płynne polecenie:

yum --disablerepo=base,updates --enablerepo=rpmforge-extras install git

Jeśli masz już zainstalowany git, użyj:

yum --disablerepo=base,updates --enablerepo=rpmforge-extras update git

Powiązane pytania):

  1. W obliczu problemów podczas aktualizacji gita do najnowszej wersji na CentOS 6.4

Uwaga aktualizacja:

Dzięki Anthony Hatzopoulos, git v1.8xbędziesz musiał użyć git18 jak w:

yum --disablerepo=base,updates --enablerepo=rpmforge-extras install git18 

Uwaga aktualizacja 2:

Dziękujemy również @Axlrod za poniższą wskazówkę i @Hiphip za opinie:

Zmień rpmforge.repoplik, rpmforge-extrasaby włączyć yum update git. W przeciwnym razie narzekał na problemy zależności.

Uwaga aktualizacja 3:

Instalowanie konkretnej wersji git powiedz 2.x Znalazłem ten przyjemny i łatwy do naśladowania przewodnik na temat pobierania źródła GIT i samodzielnego kompilowania go (i instalowania). Jeśli zaakceptowana odpowiedź nie daje żądanej wersji, wypróbuj następujące instrukcje:

http://tecadmin.net/install-git-2-0-on-centos-rhel-fedora/

(I wklejony / sformatowany z powyższego źródła na wypadek, gdyby został później usunięty)

Krok 1: Zainstaluj wymagane pakiety

Po pierwsze musimy upewnić się, że zainstalowaliśmy wymagane pakiety w twoim systemie. Użyj poniższej komendy, aby zainstalować wymagane pakiety przed skompilowaniem źródła Git.

# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
# yum install  gcc perl-ExtUtils-MakeMaker

Krok 2: Odinstaluj stary Git RPM

Teraz usuń wcześniejszą instalację Git za pomocą pliku RPM lub menedżera pakietów Yum. Jeśli twoja starsza wersja jest również skompilowana przez źródło, pomiń ten krok.

# yum remove git

Krok 3: Pobierz i skompiluj Git Source

Pobierz kod źródłowy git z jądra git lub po prostu użyj następującego polecenia, aby pobrać Git 2.0.4.

# cd /usr/src
# wget https://www.kernel.org/pub/software/scm/git/git-2.0.4.tar.gz
# tar xzf git-2.0.4.tar.gz

Po pobraniu i rozpakowaniu kodu źródłowego Git użyj poniższej komendy, aby skompilować kod źródłowy.

# cd git-2.0.4
# make prefix=/usr/local/git all
# make prefix=/usr/local/git install
#
# echo 'export PATH=$PATH:/usr/local/git/bin' >> /etc/bashrc
#  or
# echo 'export PATH=$PATH:/usr/local/git/bin' > /etc/profile.d/git.sh
#
# source /etc/bashrc

WSKAZÓWKA 1: Zaktualizowana metoda dodawania skompilowanego katalogu git bin do bashrc. Ponieważ echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/bashrcużyto „” zamiast „”, zwiększyłoby wartość bieżącej sesji dla $ PATH zamiast zachowywać ją jako zmienną, i może niekorzystnie wpłynąć na cały system. Przynajmniej powinien używać „” zamiast „” i naprawdę powinien być osobnym skryptem w/etc/profile.d/

WSKAZÓWKA 2 (@DJB): /usr/local/git/binwcześniej $PATH, ponieważ starsza wersja git była już na $ PATH:export PATH=/usr/local/git/bin:$PATH

Krok 4. Sprawdź wersję Git

Po wykonaniu powyższych kroków pomyślnie zainstalowałeś Git w swoim systemie. Pozwól użyć następującego polecenia, aby sprawdzić wersję git

# git --version

git version 2.0.4

Chciałem również dodać, że przewodnik „Pierwsze kroki” na stronie GIT zawiera również instrukcje, jak samemu pobrać i skompilować:

http://git-scm.com/book/en/v2/Getting-Started-Installing-Git


3
To dało mi tylko git w wersji 1.7x. Dla git v1.8x musisz użyć git18jak wyum --disablerepo=base,updates --enablerepo=rpmforge-extras install git18
Anthony Hatzopoulos

2
nie działało dla mnie, musiałem zmienić plik rpmforge.repo, aby włączyć dodatki rpmforge, a następnie zrobić aktualizację git. W przeciwnym razie narzekał na problemy zależności. (ponieważ wymagało to pakietów od bazy)
Alex R

5
Błąd pobierania danych repozytorium dla rpmforge-dodatków, repozytorium nie znaleziono - 1. cmd na cent.6.6
Nithin

2
Uruchamianie yum --disablerepo=base,updates --enablerepo=rpmforge-extras list | grep gitpokazuje mi Git 1.7.12 dla Centos 6.6. Być może usunęli „git18”?
Joseph Leedy

26
wiki.centos.org/AdditionalResources/Repositories/RPMForge RPMForge / RepoForge to martwy projekt. Nie jest utrzymywane. NIE UŻYWAĆ.
Maoz Zadok

91

Rackspace utrzymuje repozytorium ius , które zawiera dość aktualny git, ale zapas git musi zostać najpierw usunięty.

Instrukcje CentOS 7:

$ sudo yum install https://centos7.iuscommunity.org/ius-release.rpm
$ sudo yum erase git
$ sudo yum install epel-release 
$ sudo yum install git2u

Instrukcje CentOS 6:

$ sudo yum install https://centos6.iuscommunity.org/ius-release.rpm
$ sudo yum erase git
$ sudo yum install epel-release
$ sudo yum install git2u

Miły! Te instrukcje kompilacji rpmforge nie działały -Can't locate ExtUtils/MakeMaker.pm in @INC
Nakilon

Ten działał dla mnie dzisiaj dla najnowszych centów, inne były przestarzałe.
user5389726598465

3
Jest to jedyna metoda na tej stronie, którą wypróbowałem (na dzień 7 września 2018 r.) , Która zapewnia aktualny git 2.x dla CentOS, a także zapewnia git-credential-libsecretzainstalowanie kompilacji , co jest najbezpieczniejszym sposobem dla natywnego systemu operacyjnego do przechowywania poświadczeń git, np. dla adresów URL http [s]. Akceptowana obecnie odpowiedź w momencie pisania ( stackoverflow.com/a/21820716/407170 ) nie robi tych rzeczy i wymaga samodzielnego skompilowania.
Les Hazlewood,

Jeśli chcesz zautomatyzować to za pomocą Ansible, polecam sprawdzenie github.com/iuscommunity/automation-examples/blob/… (lub github.com/iuscommunity/automation-examples dla innych rozwiązań)
jbmusso

84

Znalazłem przyjemny i łatwy do naśladowania przewodnik na temat pobierania źródła GIT i samodzielnego kompilowania go (i instalowania). Jeśli zaakceptowana odpowiedź nie daje żądanej wersji, wypróbuj następujące instrukcje:

http://tecadmin.net/install-git-2-0-on-centos-rhel-fedora/

(I wklejony / sformatowany z powyższego źródła na wypadek, gdyby został później usunięty)

Krok 1: Zainstaluj wymagane pakiety

Po pierwsze musimy upewnić się, że zainstalowaliśmy wymagane pakiety w twoim systemie. Użyj poniższej komendy, aby zainstalować wymagane pakiety przed skompilowaniem źródła Git.

# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
# yum install  gcc perl-ExtUtils-MakeMaker

Krok 2: Odinstaluj stary Git RPM

Teraz usuń wcześniejszą instalację Git za pomocą pliku RPM lub menedżera pakietów Yum. Jeśli twoja starsza wersja jest również skompilowana przez źródło, pomiń ten krok.

# yum remove git

Krok 3: Pobierz i skompiluj Git Source

Pobierz kod źródłowy git z jądra git lub po prostu użyj następującego polecenia, aby pobrać Git 2.5.3.

# cd /usr/src
# wget https://www.kernel.org/pub/software/scm/git/git-2.5.3.tar.gz
# tar xzf git-2.5.3.tar.gz

Po pobraniu i rozpakowaniu kodu źródłowego Git użyj poniższej komendy, aby skompilować kod źródłowy.

# cd git-2.5.3
# make prefix=/usr/local/git all
# make prefix=/usr/local/git install
# echo 'pathmunge /usr/local/git/bin/' > /etc/profile.d/git.sh 
# chmod +x /etc/profile.d/git.sh
# source /etc/bashrc

Krok 4. Sprawdź wersję Git

Po wykonaniu powyższych kroków pomyślnie zainstalowałeś Git w swoim systemie. Użyj następującego polecenia, aby sprawdzić wersję git

# git --version

git version 2.5.3

Chciałem również dodać, że przewodnik „Pierwsze kroki” na stronie GIT zawiera również instrukcje, jak samemu pobrać i skompilować:

http://git-scm.com/book/en/v2/Getting-Started-Installing-Git


1
Re Krok 3. Ustawianie ścieżki, znalazłem, że ( serverfault.com/a/303824 ) działa lepiej: # echo 'pathmunge / usr / local / git / bin /'> /etc/profile.d/git.sh # chmod + x /etc/profile.d/git.sh
Kenneth Benjamin

3
Próbowałem na Centos 6.5 i wypróbowałem najnowszą (dziś) wersję GIT 2.5.3 i działa jak urok. wget https://www.kernel.org/pub/software/scm/git/git-2.5.3.tar.gz
Vielinko

1
Praca z wersją 2.7.4 i CentOS 6.5 - Dzięki
Moe

1
Pozwoliło mi to zainstalować 2.10.1, aby zachować zgodność z moim lokalnym klientem git. Niesamowity zestaw instrukcji.
TinkerTenorSoftwareGuy

2
Jeśli nadal zauważysz, że git nie jest zainstalowany, przyczyną może być pathmunge. Możesz użyć następujących poleceń, aby dodać git do swojego środowiska. echo "export PATH=/usr/local/git/bin:$PATH" >> /etc/bashrca następnie source /etc/bashrc
mshakeel

10

Osobiście wolę budować pakiety RPM dla CentOS podczas instalowania niestandardowego oprogramowania i zastępowania rozproszonych komponentów. W tym celu polecam użyć Mock do stworzenia czystego środowiska kompilacji.

Procedura jest następująca:

  1. Uzyskaj źródłowy RPMS lub odpowiedni plik SPEC i nieskazitelny źródłowy plik archiwum. W tym przypadku można znaleźć źródło pakietów RPM dla git2X dla CentOS-6 pod adresem: http://dl.iuscommunity.org/pub/ius/archive/CentOS/6/SRPMS/. Dostępne są również pakiety dla innych wydań CentOS.

  2. Zainstaluj niezbędne oprogramowanie pomocnicze:

    yum install epel-release  # you need this for mock
    yum install rpm-build
    yum install redhat-rpm-config
    yum install rpmdevtools
    yum install mock
    
  3. Dodawanie konta użytkownika rpm build ( nie budować jako root lub jako prawdziwego użytkownika - kwestie bezpieczeństwa będą wracać do ugryźć ).

    sudo adduser builder --home-dir /home/builder \
    --create-home --user-group --groups mock \
    --shell /bin/bash --comment "rpm package builder"
    
  4. Następnie potrzebujemy środowiska kompilacji.

    su -l builder
    rpmdev-setuptree
    

    To tworzy następującą strukturę katalogów:

    ~
    └── rpmbuild
        ├── BUILD
        ├── RPMS
        ├── SOURCES
        ├── SPECS
        └── SRPMS
    
  5. Używamy przygotowanego SRPMS, aby w tym przypadku można było zignorować tarball SOURCES i przejść bezpośrednio do SRPMS.

    wget http://dl.iuscommunity.org/pub/ius/archive/CentOS/6/SRPMS/git2u-2.5.3-1.ius.centos6.src.rpm \
    -O ~/rpmbuild/SRPMS/git2u-2.5.3-1.ius.centos6.src.rpm
    
  6. Skonfiguruj próbny (jako root)

    cd /etc/mock
    rm default.cfg
    ln -s epel-6-x86_64.cfg default.cfg
    vim default.cfg
    

    Wyłącz betarepozytorium. Włącz repozytorium basei update.

  7. Zainicjuj drzewo kompilacji (domyślnie / var / lib / mock)

    mock --init
    
  8. Gdybyśmy budowali na podstawie ŹRÓDEŁ, to tutaj użylibyśmy pliku SPEC i użylibyśmy mock --buildsrpm . . .. Ale w tym przypadku przechodzimy bezpośrednio do kroku kompilacji binarnej:

    mock --no-clean --rebuild ~/rpmbuild/SRPMS/git2u-2.5.3-1.ius.centos6.src.rpm
    

    Spowoduje to rozwiązanie zależności kompilacji i pobranie ich (około 95 pakietów) do czystego katalogu głównego kompilacji. Następnie wyodrębni źródła i zbuduje plik binarny z dostarczonego SRPM i pozostawi w nim /var/lib/mock/epel-6-x86_64/result; lub w dowolnej niestandardowej lokalizacji katalogu głównego i podanej architekturze. To zajmie dużo czasu. W tym pakiecie jest wiele; w szczególności dokumentacja.

  9. Jeśli wszystko pójdzie dobrze, powinieneś skończyć z zestawem pakietów RPM odpowiednich do instalacji zamiast wersji Distro. Właśnie z tym skończyłem:

    ll /var/lib/mock/epel-6-x86_64/result
    total 34996
    -rw-rw-r--. 1 byrnejb mock   448455 Oct 30 10:09 build.log
    -rw-rw-r--. 1 byrnejb mock    52464 Oct 30 10:09 emacs-git2u-2.5.3-1.ius.el6.noarch.rpm
    -rw-rw-r--. 1 byrnejb mock    47228 Oct 30 10:09 emacs-git2u-el-2.5.3-1.ius.el6.noarch.rpm
    -rw-rw-r--. 1 byrnejb mock  8474478 Oct 30 09:57 git2u-2.5.3-1.ius.el6.src.rpm
    -rw-rw-r--. 1 byrnejb mock  8877584 Oct 30 10:09 git2u-2.5.3-1.ius.el6.x86_64.rpm
    -rw-rw-r--. 1 byrnejb mock    27284 Oct 30 10:09 git2u-all-2.5.3-1.ius.el6.noarch.rpm
    -rw-rw-r--. 1 byrnejb mock    27800 Oct 30 10:09 git2u-bzr-2.5.3-1.ius.el6.noarch.rpm
    -rw-rw-r--. 1 byrnejb mock   112564 Oct 30 10:09 git2u-cvs-2.5.3-1.ius.el6.noarch.rpm
    -rw-rw-r--. 1 byrnejb mock   436176 Oct 30 10:09 git2u-daemon-2.5.3-1.ius.el6.x86_64.rpm
    -rw-rw-r--. 1 byrnejb mock 15858600 Oct 30 10:09 git2u-debuginfo-2.5.3-1.ius.el6.x86_64.rpm
    -rw-rw-r--. 1 byrnejb mock    60556 Oct 30 10:09 git2u-email-2.5.3-1.ius.el6.noarch.rpm
    -rw-rw-r--. 1 byrnejb mock   274888 Oct 30 10:09 git2u-gui-2.5.3-1.ius.el6.noarch.rpm
    -rw-rw-r--. 1 byrnejb mock    79176 Oct 30 10:09 git2u-p4-2.5.3-1.ius.el6.noarch.rpm
    -rw-rw-r--. 1 byrnejb mock   483132 Oct 30 10:09 git2u-svn-2.5.3-1.ius.el6.x86_64.rpm
    -rw-rw-r--. 1 byrnejb mock   173732 Oct 30 10:09 gitk2u-2.5.3-1.ius.el6.noarch.rpm
    -rw-rw-r--. 1 byrnejb mock   115692 Oct 30 10:09 gitweb2u-2.5.3-1.ius.el6.noarch.rpm
    -rw-rw-r--. 1 byrnejb mock    57196 Oct 30 10:09 perl-Git2u-2.5.3-1.ius.el6.noarch.rpm
    -rw-rw-r--. 1 byrnejb mock    89900 Oct 30 10:09 perl-Git2u-SVN-2.5.3-1.ius.el6.noarch.rpm
    -rw-rw-r--. 1 byrnejb mock   101026 Oct 30 10:09 root.log
    -rw-rw-r--. 1 byrnejb mock      980 Oct 30 10:09 state.log
    
  10. Zainstaluj używając yum lub rpm.

    Będziesz potrzebował git2u-2.5.3-1.ius.el6.x86_64.rpmco najmniej takich dodatkowych pakietów wsparcia, jakie wymagają ( perl-Git2u-2.5.3-1.ius.el6.noarch.rpm) lub chcesz.

    Ta kompilacja ma cykliczną zależność: git2u-2.5.3-1.ius.el6.x86_64.rpmzależy od perl-Git2u-2.5.3-1.ius.el6.noarch.rpmi perl-Git2u-2.5.3-1.ius.el6.noarch.rpmzależy od git2u-2.5.3-1.ius.el6.x86_64.rpm. Prosta instalacja z rpmtym samym się nie powiedzie.

    Istnieją dwa sposoby radzenia sobie z tym:

    • Zainstaluj oba jednocześnie przez yum:

      yum localinstall \
        git2u-2.5.3-1.ius.el6.x86_64.rpm \
        perl-Git2u-2.5.3-1.ius.el6.noarch.rpm`
      
    • Skonfiguruj lokalne repozytorium yum.

      Podaję mój LocalFile.repoplik poniżej, ponieważ zawiera instrukcje, jak to zrobić i zapewnia niezbędny plik repo w tym samym czasie.

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

Może być również konieczne ręczne zainstalowanie dodatkowych pakietów zależności, takich jak perl-TermReadKeydostępne ze zwykłych repozytoriów.


Jeśli nie zamierzasz edytować pliku specyfikacji, dlaczego po prostu nie użyć bezpośrednio pakietów binarnych IUS?
carlwgeorge

5

Aby zbudować i zainstalować nowoczesny Git na CentOS 6:

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

5

jak mówi git :

RHEL i pochodne zwykle dostarczają starsze wersje git. Możesz pobrać plik archiwum i kompilację ze źródła lub użyć zewnętrznego repozytorium, takiego jak Projekt społeczności IUS, aby uzyskać nowszą wersję git.

tam jest dobry tutorial tutaj . w moim przypadku (serwer Centos7) po instalacji musiałem się wylogować i zalogować ponownie.


4

Zbuduj najnowszą wersję gitCentos 6/7

Przygotowanie systemu do budowania RPM

  1. Zainstaluj epel:

    W przypadku EL6 użyj:

    sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm  
    

    W przypadku EL7 użyj:

    sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
    
  2. Zainstaluj fedpkg:

    sudo yum install fedpkg
    
  3. Dodaj się do grupy próbnej (po tej zmianie może być konieczne ponowne logowanie do serwera):

    sudo usermod -a -G mock $USER
    

Pobieranie git

  1. Pobierz gitźródła:

    fedpkg clone -a git && cd git
    fedpkg sources
    
  2. Sprawdź źródła:

    sha512sum -c sources
    

Buduj obroty na minutę

  1. Utwórz srmp. Użyj el6dla RHEL6, el7dla RHEL7.

    fedpkg --dist el7 srpm
    
  2. Zbuduj pakiet w próbnym:

    mock -r epel-7-x86_64 git-2.16.0-1.el7.src.rpm
    
  3. Zainstaluj najnowszą wersję gitrpm z /var/lib/mock/epel-7-x86_64/result/. Uwaga: może być konieczne odinstalowanie istniejącej wersji git z systemu.

Ta instrukcja oparta jest na liście mailowej Todda Zullingera .


1
Świetna odpowiedź. Zarządzaj pakietami. O wiele lepsze niż używanie nieoficjalnych repozytoriów lub instalowanie ze źródła. Zawsze pobierałem pakiet src ze strony pakietu Fedory za pośrednictwem przeglądarki, ale jest to znacznie czystsze rozwiązanie. Dzięki!
orodbhen

3

Dodając tutaj odpowiedź na temat ronda. Próbowałem zainstalować git na instancji Amazon RHEL 6.0, a to, co mnie uratowało, to ... conda, jak w Ana conda Python.

Zainstalowałem conda w wierszu poleceń z archiwów (kod modelowany po tym ):

wget http://repo.continuum.io/miniconda/Miniconda2-4.2.12-Linux-x86_64.sh -O ~/miniconda.sh
bash ~/miniconda.sh -b -p $HOME/miniconda
export PATH="$HOME/miniconda/bin:$PATH"

a następnie pobiegł

conda install git

i zainstalowano stosunkowo najnowszą wersję git. Dzisiaj jest 26.12.2016, a wersja to 2.9.3.


1

Oto moja metoda instalacji gita na centos 6.

sudo yum groupinstall "Development Tools"
sudo yum install zlib-devel perl-ExtUtils-MakeMaker asciidoc xmlto openssl-devel curl-devel
sudo yum install wget
cd ~
wget -O git.zip https://github.com/git/git/archive/v2.7.2.zip
unzip git.zip
cd git-2.7.2
make configure
./configure --prefix=/usr/local
make all doc
sudo make install install-doc install-html

Z mojego doświadczenia (centos 6.7) powinieneś także yum install libcurl-devel.
jgrump2012,

1

Może to być nieistotne. To jest dla ludzi, którzy nie chcą budować najnowszego gita na hoście, tymczasem nadal mogą uzyskać najnowszy git.

Myślę, że większość ludzi nie lubi budować najnowszego gita na CentOS, ponieważ zależności będą zanieczyszczać hosta i będziesz musiał uruchamiać wiele poleceń. Dlatego mam pomysł, który polega na zbudowaniu gita wewnątrz kontenera Docker, a następnie zainstalowaniu pliku wykonywalnego za pomocą montowania woluminu dokera. Następnie możesz usunąć obraz i pojemnik.

Tak, wadą jest to, że musisz zainstalować dokera. Ale najmniej zależności są wprowadzane do hosta i nie trzeba instalować innych yum repo.

Oto moje repozytorium. https://github.com/wood1986/docker-library/tree/master/git


0

Jeśli git jest już zainstalowany, najpierw usuń stary git

sudo yum remove git*

Dodaj repozytorium IUS CentOS 7

sudo yum -y install  https://centos7.iuscommunity.org/ius-release.rpm
sudo yum -y install  git2u-all

Teraz sprawdź wersję git po zainstalowaniu pakietu git2u-all. Jeśli doker jest zainstalowany na twoim komputerze, ius-release może powodować problemy.

git --version

bingo !!


-3

Zastąpienie podstawowych repozytoriów bazowych repozytoriami dodatkowymi może być bardzo mylące i niebezpieczne, bez znacznych testów i przemyśleń. W szczególności RPMforge jest faktycznie konający i nie otrzymuje aktualizacji.

Osobiście publikuję narzędzia do budowania git 2.4, zapakowane jako alternatywny pakiet „git24” na stronie https://github.com/nkadel/git24-srpm/ . Możesz je uzyskać i rozwidlić, jeśli chcesz, aby pakiety różniły się od standardowych pakietów systemowych, podobnie jak pakiety „samba” i „samba4” są zróżnicowane.


1
Czasami można linkować do własnych zasobów / stron internetowych, ale upewnij się, że Twój post nadal zawiera wystarczająco kompletną odpowiedź, nawet jeśli Twój link nie działał (nawiasem mówiąc, już nie działa)
Hayden Schiff

Napraw literówkę.
Stefan Lasiewski
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.