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.
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
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
Zainstaluj najnowszą wersję Git 2.x:
yum install git
Sprawdź zainstalowaną wersję Gita:
git --version
Od 02 marca 2020 najnowsza dostępna wersja WANDisco to 2.22.0 .
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:
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:
(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.
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ć:
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”?
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.
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:
(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.
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ć:
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:
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.
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
Dodawanie konta użytkownika rpm build ( nie budować jako root lub jako prawdziwego użytkownika - kwestie bezpieczeństwa będą wracać do ugryźć ).
Zainicjuj drzewo kompilacji (domyślnie / var / lib / mock)
mock --init
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:
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.
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
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.
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
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.
Ś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 ):
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.
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.
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)
Odpowiedzi:
Możesz użyć repozytorium CentOS WANDisco, aby zainstalować Git 2.x: dla CentOS 6 , dla CentOS 7
Zainstaluj pakiet repozytorium WANDisco:
Zainstaluj najnowszą wersję Git 2.x:
Sprawdź zainstalowaną wersję Gita:
Od 02 marca 2020 najnowsza dostępna wersja WANDisco to 2.22.0 .
źródło
--disablerepo=base,updates
nie działa dla mnie.Patrząc na blog tutaj znalazłem rozwiązanie w jednym z komentarzy. Upewnij się, że
rpmforge
repozytorium zostało dodane do yum CentOS i po prostu uruchom płynne polecenie:Jeśli masz już zainstalowany git, użyj:
Powiązane pytania):
Uwaga aktualizacja:
Dzięki Anthony Hatzopoulos,
git v1.8x
będziesz musiał użyć git18 jak w:Uwaga aktualizacja 2:
Dziękujemy również @Axlrod za poniższą wskazówkę i @Hiphip za opinie:
Zmień
rpmforge.repo
plik,rpmforge-extras
aby włączyćyum update git
. W przeciwnym razie narzekał na problemy zależności.Uwaga aktualizacja 3:
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.
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.
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.
Po pobraniu i rozpakowaniu kodu źródłowego Git użyj poniższej komendy, aby skompilować kod źródłowy.
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
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
źródło
git18
jak wyum --disablerepo=base,updates --enablerepo=rpmforge-extras install git18
yum --disablerepo=base,updates --enablerepo=rpmforge-extras list | grep git
pokazuje mi Git 1.7.12 dla Centos 6.6. Być może usunęli „git18”?Rackspace utrzymuje repozytorium ius , które zawiera dość aktualny git, ale zapas git musi zostać najpierw usunięty.
Instrukcje CentOS 7:
Instrukcje CentOS 6:
źródło
Can't locate ExtUtils/MakeMaker.pm in @INC
git-credential-libsecret
zainstalowanie 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.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.
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.
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.
Po pobraniu i rozpakowaniu kodu źródłowego Git użyj poniższej komendy, aby skompilować kod źródłowy.
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
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
źródło
wget https://www.kernel.org/pub/software/scm/git/git-2.5.3.tar.gz
echo "export PATH=/usr/local/git/bin:$PATH" >> /etc/bashrc
a następniesource /etc/bashrc
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:
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.Zainstaluj niezbędne oprogramowanie pomocnicze:
Dodawanie konta użytkownika rpm build ( nie budować jako root lub jako prawdziwego użytkownika - kwestie bezpieczeństwa będą wracać do ugryźć ).
Następnie potrzebujemy środowiska kompilacji.
To tworzy następującą strukturę katalogów:
Używamy przygotowanego SRPMS, aby w tym przypadku można było zignorować tarball SOURCES i przejść bezpośrednio do SRPMS.
Skonfiguruj próbny (jako root)
Wyłącz
beta
repozytorium. Włącz repozytoriumbase
iupdate
.Zainicjuj drzewo kompilacji (domyślnie / var / lib / mock)
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: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.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:
Zainstaluj używając yum lub rpm.
Będziesz potrzebował
git2u-2.5.3-1.ius.el6.x86_64.rpm
co 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.rpm
zależy odperl-Git2u-2.5.3-1.ius.el6.noarch.rpm
iperl-Git2u-2.5.3-1.ius.el6.noarch.rpm
zależy odgit2u-2.5.3-1.ius.el6.x86_64.rpm
. Prosta instalacja zrpm
tym samym się nie powiedzie.Istnieją dwa sposoby radzenia sobie z tym:
Zainstaluj oba jednocześnie przez yum:
Skonfiguruj lokalne repozytorium yum.
Podaję mój
LocalFile.repo
plik poniżej, ponieważ zawiera instrukcje, jak to zrobić i zapewnia niezbędny plik repo w tym samym czasie.Może być również konieczne ręczne zainstalowanie dodatkowych pakietów zależności, takich jak
perl-TermReadKey
dostępne ze zwykłych repozytoriów.źródło
Aby zbudować i zainstalować nowoczesny Git na CentOS 6:
źródło
jak mówi git :
tam jest dobry tutorial tutaj . w moim przypadku (serwer Centos7) po instalacji musiałem się wylogować i zalogować ponownie.
źródło
Zbuduj najnowszą wersję
git
Centos 6/7Przygotowanie systemu do budowania RPM
Zainstaluj epel:
W przypadku EL6 użyj:
W przypadku EL7 użyj:
Zainstaluj
fedpkg
:Dodaj się do grupy próbnej (po tej zmianie może być konieczne ponowne logowanie do serwera):
Pobieranie
git
Pobierz
git
źródła:Sprawdź źródła:
Buduj obroty na minutę
Utwórz srmp. Użyj
el6
dla RHEL6,el7
dla RHEL7.Zbuduj pakiet w próbnym:
Zainstaluj najnowszą wersję
git
rpm 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 .
źródło
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 ):
a następnie pobiegł
i zainstalowano stosunkowo najnowszą wersję git. Dzisiaj jest 26.12.2016, a wersja to 2.9.3.
źródło
Oto moja metoda instalacji gita na centos 6.
źródło
yum install libcurl-devel
.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
źródło
Jeśli git jest już zainstalowany, najpierw usuń stary git
Dodaj repozytorium IUS CentOS 7
Teraz sprawdź wersję git po zainstalowaniu pakietu git2u-all. Jeśli doker jest zainstalowany na twoim komputerze, ius-release może powodować problemy.
bingo !!
źródło
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.
źródło