Installieren Sie eine neuere Version von Git unter CentOS 7


21

Ich möchte Git "Push to Deploy" auf meinem CentOS 7-Server aktivieren. Derzeit kann ich Git 1.8.3.1 nur über yum bekommen. Ich brauche eine neuere Version.

Muss ich es aus dem Quellcode erstellen oder gibt es ein Repo, das ich verwenden kann? Ich alreay hinzugefügt EPEL und elrepo aber yum gibt mir immer noch 1.8.3.1 Git.


"Push to Deployment" bedeutet, Git-Hooks zu verwenden, die bei einem Push aktiv werden. Welche diesbezügliche Funktionalität fehlt Ihnen in der EL7-Git-Version? Ich benutze Git 1.7.1 auf EL6 erfolgreich für viele solcher Aufgaben.
Sven

2
@Sven Aufgrund der Notwendigkeit einer neueren Git-Version würde ich eher sagen, dass er sich auf Git 2.3 "Push to deploy" bezieht, mit dem Sie auf ein nicht-bares Repository pushen und dessen Arbeitsverzeichnis aktualisieren können - github.com/blog/1957-git-2-3-has-been-released
andol

Andol richtig ist , würde Ich mag die „Push - to - Bereitstellung“ verwenden , Features , das mit Git 2.3 neu ist
Oliver

Antworten:


10

Das Bauen von der Quelle ist ganz einfach. Digital Ocean hat eine nette Anleitung zum Erstellen von Git aus dem Quellcode unter CentOS 7 . Legen Sie die resultierende Binärdatei in / usr / local / bin / auf Ihrem CentOS 7-System ab (das standardmäßig in Ihrem $ PATH enthalten ist), und Sie können loslegen.

Natürlich bevorzugen Sie Pakete / die Verwendung des Repos, aber angesichts Ihrer Situation würde ich nicht zögern, es selbst zu bauen.

Für allgemeine Informationen; Push to Deploy wurde in Git 2.3.0 eingeführt . Stellen Sie sicher, dass Sie diese Version oder höher verwenden.


27

Sie können ein IUS-Repository ( https://ius.io/ ) verwenden, das auf der offiziellen Git-Website unter https://git-scm.com/download/linux bereitgestellt wird

Führen Sie dazu (als root) Folgendes aus:

yum install epel-release
yum remove git
rpm -U https://centos7.iuscommunity.org/ius-release.rpm
yum install git2u

( centos7Kann durch centos6oder ersetzt werden, rhel{6,7}wenn Sie CentOS nicht verwenden).


4
Auf jeden Fall die Methode, die ich verwenden würde, da Sie ein gut gepflegtes RPM installiert bekommen und nicht, was auch immer Ihre Build-Tools erstellt haben.
Ken Williams

1
Ich möchte nur darauf hinweisen, dass die Verwendung von Repos von Drittanbietern möglicherweise nicht sicher ist. Hier ist ein Blog-Beitrag, der sich mit diesem Problem befasst.
Robsch

@robsch Dem stimme ich voll und ganz zu, und ich werde niemals externe Repos verwenden, wenn erforderliche Pakete in standardmäßigen / offiziellen Repos bereitgestellt würden. Wie immer ist es ein Kompromiss. Wie auch immer, wir sollten immer der Strategie "Überlegen Sie zweimal, bevor Sie es tun" folgen.
Lospejos

12

Ich habe diesen Ansatz für CentOS 7.2:

rpm -U http://opensource.wandisco.com/centos/7/git/x86_64/wandisco-git-release-7-2.noarch.rpm \
    && yum install -y git

Im Moment habe ich 2.10.0GIT-Version.

Oder für CentOS 7.1 den gleichen Pfad aber wandisco-git-release-7-1.noarch.rpm.

Sie können die verfügbaren Versionen unter http://opensource.wandisco.com/centos/7/git/x86_64/ einsehen.



1

Das Repo "Inline with Upstream Stable" ( https://ius.io/ ) sieht für mich ziemlich gut aus.

Es hat Git 2.x RPMs, die gut mit dem RPM-Konfliktsystem funktionieren.

Sie können Git-RPMs hier finden:

https://dl.iuscommunity.org/pub/ius/stable/CentOS/7/x86_64/repoview/letter_g.group.html

Ich fand die SCL-Methode (Software Collections) umständlicher. Sie achten sehr darauf, den Benutzer, der sie nicht benutzt, nicht zu stören. Meiner Meinung nach etwas zu vorsichtig.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.