Cách cài đặt phiên bản git mới nhất trên CentOS 7.x / 6.x


232

Tôi đã sử dụng thông thường:

yum install git

Nó không cài đặt phiên bản git mới nhất trên CentOS của tôi 6. Làm cách nào tôi có thể cập nhật lên phiên bản git mới nhất cho CentOS 6? Giải pháp có thể áp dụng cho các phiên bản mới hơn của CentOS như CentOS 7.


11
Vâng, đúng vậy. Hoàn toàn trong giới hạn để đặt câu hỏi và trả lời khi thông tin hữu ích chưa được xử lý.
Người đàn ông Tin

Câu trả lời:


336

Bạn có thể sử dụng kho lưu trữ CentOS của WANDisco để cài đặt Git 2.x: cho CentOS 6 , cho CentOS 7

  1. Cài đặt gói repo 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. Cài đặt phiên bản Git 2.x mới nhất:

    yum install git
    
  3. Xác minh phiên bản Git đã được cài đặt:

    git --version
    

Kể từ ngày 02 tháng 3 năm 2020, phiên bản mới nhất có sẵn từ WANDisco là 2.22.0 .


9
Câu trả lời này phải được áp dụng. Đã áp dụng câu trả lời với --disablerepo=base,updateskhông làm việc cho tôi.
Kirby

1
Và FWIW, kể từ 2016-11-08, phiên bản Git của WANDisco lên đến phiên bản 2.10; phù hợp với các bản phát hành Git SCM chính thức.
JakeGould

6
Đây là một trong những làm việc cho tôi. Đơn giản hơn nhiều so với câu trả lời được chấp nhận.
Ben Watson

1
Tính đến tháng 2 năm 2019, repo này dường như đã ngừng nhận thông tin cập nhật: git mới nhất là v2.20.1 nhưng repo chỉ có v2.18.0
IanB

1
Khóa pgp không khả dụng qua https, có ai khác có thể xác minh không?
dùng3338098

134

Có một cái nhìn vào blog ở đây tôi tìm thấy giải pháp trong một trong những ý kiến. Hãy chắc chắn rằng bạn đã rpmforgethêm kho lưu trữ vào CentOS yum của bạn và chỉ cần chạy lệnh chảy:

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

Nếu bạn đã cài đặt git thì hãy sử dụng:

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

Câu hỏi liên quan):

  1. Đối mặt với các vấn đề trong khi nâng cấp git lên phiên bản mới nhất trên CentOS 6.4

Lưu ý cập nhật:

Cảm ơn Anthony Hatzopoulos, vì git v1.8xbạn sẽ cần sử dụng git18 như trong:

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

Lưu ý cập nhật 2:

Cũng cảm ơn @Axlrod cho gợi ý dưới đây và @Hiphip cho phản hồi:

Thay đổi rpmforge.repotập tin rpmforge-extrasđể kích hoạt , yum update git. Nếu không, nó phàn nàn về các vấn đề phụ thuộc.

Lưu ý cập nhật 3:

Cài đặt một phiên bản cụ thể của git say 2.x Tôi thấy hướng dẫn hay và dễ làm này về cách tải xuống nguồn GIT và tự biên dịch nó (và cài đặt nó). Nếu câu trả lời được chấp nhận không cung cấp cho bạn phiên bản bạn muốn, hãy thử các hướng dẫn sau:

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

(Và đã dán / định dạng lại từ nguồn trên trong trường hợp nó bị xóa sau)

Bước 1: Cài đặt các gói cần thiết

Trước tiên, chúng tôi cần đảm bảo rằng chúng tôi đã cài đặt các gói cần thiết trên hệ thống của bạn. Sử dụng lệnh sau để cài đặt các gói cần thiết trước khi biên dịch nguồn Git.

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

Bước 2: Gỡ cài đặt Git RPM cũ

Bây giờ hãy xóa mọi cài đặt Git trước qua tệp RPM hoặc trình quản lý gói Yum. Nếu phiên bản cũ hơn của bạn cũng được biên dịch qua nguồn, thì bỏ qua bước này.

# yum remove git

Bước 3: Tải xuống và biên dịch nguồn Git

Tải xuống mã nguồn git từ kernel git hoặc đơn giản là sử dụng lệnh sau để tải xuống 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

Sau khi tải xuống và giải nén mã nguồn Git, hãy sử dụng lệnh sau để biên dịch mã nguồn.

# 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

GỢI Ý 1: Phương pháp cập nhật thêm thư mục git bin đã biên dịch vào bashrc. Vì echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/bashrcđược sử dụng "" thay vì '', nó sẽ mở rộng giá trị của phiên hiện tại cho $ PATH thay vì giữ nó như một biến và có thể ảnh hưởng xấu đến toàn bộ hệ thống. Tối thiểu, nó nên sử dụng '' thay vì "" và thực sự phải là một tập lệnh riêng biệt trong/etc/profile.d/

GỢI Ý 2 (@DJB): /usr/local/git/bintrước đây $PATH, vì phiên bản cũ hơn của git đã có trên $ PATH:export PATH=/usr/local/git/bin:$PATH

Bước 4. Kiểm tra phiên bản Git

Sau khi hoàn thành các bước trên, bạn đã cài đặt thành công Git trong hệ thống của mình. Hãy sử dụng lệnh sau để kiểm tra phiên bản git

# git --version

git version 2.0.4

Tôi cũng muốn thêm rằng hướng dẫn "Bắt đầu" tại trang web GIT cũng bao gồm các hướng dẫn về cách tải xuống và tự biên dịch nó:

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


3
Điều này chỉ có tôi git v1.7x. Đối với git v1.8x, bạn cần sử dụng git18như trongyum --disablerepo=base,updates --enablerepo=rpmforge-extras install git18
Anthony Hatzopoulos

2
không làm việc cho tôi, tôi đã phải thay đổi tập tin rpmforge.repo để kích hoạt tính năng bổ sung của rpmforge, và sau đó thực hiện cập nhật git. Nếu không, nó phàn nàn về các vấn đề phụ thuộc. (vì nó cần các gói từ cơ sở)
Alex R

5
Lỗi khi nhận dữ liệu kho lưu trữ cho phần mở rộng của rpmforge, không tìm thấy kho lưu trữ - cmd đầu tiên trên cent6.6
Nithin

2
Chạy yum --disablerepo=base,updates --enablerepo=rpmforge-extras list | grep gitchỉ hiển thị Git 1.7.12 cho tôi trên Centos 6.6. Có lẽ họ đã xóa "git18"?
Joseph Leedy

26
wiki.centos.org/AdditableResource/Repositories/RPMForge RPMForge / RepoForge là một dự án đã chết. Nó không được duy trì. KHÔNG ĐƯỢC DÙNG.
Maoz Zadok

91

Rackspace duy trì kho lưu trữ ius , trong đó có một git cập nhật hợp lý, nhưng git stock trước tiên phải được gỡ bỏ.

Hướng dẫn của 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

Hướng dẫn của 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

Đẹp! Các hướng dẫn biên dịch rpmforge không hoạt động -Can't locate ExtUtils/MakeMaker.pm in @INC
Nakilon

Cái này làm việc cho tôi ngày hôm nay cho các centos gần đây nhất, những cái khác đã lỗi thời.
dùng5389726598465

3
Đây là phương pháp duy nhất trên trang này mà tôi đã thử (kể từ ngày 7 tháng 9 năm 2018) để đảm bảo git 2.x cập nhật cho CentOS cũng đảm bảo git-credential-libsecretcài đặt được biên dịch , là phương tiện tự nhiên an toàn nhất của os để lưu trữ thông tin đăng nhập git, ví dụ: đối với URL http [s]. Câu trả lời hiện được chấp nhận tại thời điểm viết ( stackoverflow.com/a/21820716/407170 ) không làm những điều này và yêu cầu bạn phải tự biên dịch.
Les Hazlewood

Nếu bạn muốn tự động hóa việc này bằng Ansible, tôi khuyên bạn nên kiểm tra github.com/iuscommunity/automation-examples/blob/ mẹo (hoặc github.com/iuscommunity/automation-examples cho các giải pháp khác)
jbmusso 26/11/18

84

Tôi tìm thấy hướng dẫn hay và dễ làm này về cách tải xuống nguồn GIT và tự biên dịch nó (và cài đặt nó). Nếu câu trả lời được chấp nhận không cung cấp cho bạn phiên bản bạn muốn, hãy thử các hướng dẫn sau:

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

(Và đã dán / định dạng lại từ nguồn trên trong trường hợp nó bị xóa sau)

Bước 1: Cài đặt các gói cần thiết

Trước tiên, chúng tôi cần đảm bảo rằng chúng tôi đã cài đặt các gói cần thiết trên hệ thống của bạn. Sử dụng lệnh sau để cài đặt các gói cần thiết trước khi biên dịch nguồn Git.

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

Bước 2: Gỡ cài đặt Git RPM cũ

Bây giờ hãy xóa mọi cài đặt Git trước qua tệp RPM hoặc trình quản lý gói Yum. Nếu phiên bản cũ hơn của bạn cũng được biên dịch qua nguồn, thì bỏ qua bước này.

# yum remove git

Bước 3: Tải xuống và biên dịch nguồn Git

Tải xuống mã nguồn git từ kernel git hoặc đơn giản là sử dụng lệnh sau để tải xuống 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

Sau khi tải xuống và giải nén mã nguồn Git, hãy sử dụng lệnh sau để biên dịch mã nguồn.

# 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

Bước 4. Kiểm tra phiên bản Git

Khi hoàn thành các bước trên, bạn đã cài đặt thành công Git trong hệ thống của mình. Sử dụng lệnh sau để kiểm tra phiên bản git

# git --version

git version 2.5.3

Tôi cũng muốn thêm rằng hướng dẫn "Bắt đầu" tại trang web GIT cũng bao gồm các hướng dẫn về cách tải xuống và tự biên dịch nó:

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


1
Bước 3. thiết lập đường dẫn, tôi thấy điều này ( serverfault.com/a/303824 ) hoạt động tốt hơn: # echo 'pathmunge / usr / local / git / bin /'> /etc/profile.d/git.sh # chmod + x /etc/profile.d/git.sh
Kenneth Benjamin

3
Tôi đã thử trên Centos 6.5 và đã thử phiên bản GIT mới nhất (hôm nay) 2.5.3 và hoạt động như một bùa mê. wget https://www.kernel.org/pub/software/scm/git/git-2.5.3.tar.gz
Vielinko

1
Làm việc với 2.7.4 và CentOS 6.5 - Cảm ơn
Moe

1
Điều này cho phép tôi cài đặt 2.10.1 để giữ ngang bằng với ứng dụng khách git cục bộ của mình. Bộ hướng dẫn tuyệt vời.
TinkerTenorSoftwareGuy

2
Nếu bạn vẫn thấy rằng git chưa được cài đặt thì đó có thể là do pathmunge. Bạn có thể sử dụng các lệnh sau để thêm git trong môi trường của bạn. echo "export PATH=/usr/local/git/bin:$PATH" >> /etc/bashrcvà sau đó source /etc/bashrc
mshakeel

10

Sở thích cá nhân của tôi là xây dựng các gói vòng / phút cho CentOS khi cài đặt phần mềm không chuẩn và thay thế các thành phần phân tán. Đối với điều này, tôi khuyên bạn nên sử dụng Mock để tạo môi trường xây dựng sạch.

Thủ tục là:

  1. Có được RPMS nguồn hoặc một tệp SPEC phù hợp và tarball nguồn nguyên sơ. Trong trường hợp này, người ta có thể tìm thấy các gói RPM nguồn cho git2X cho CentOS-6 tại : http://dl.iuscommunity.org/pub/ius/archive/CentOS/6/SRPMS/. Gói cho các bản phát hành CentOS khác cũng có sẵn.

  2. Cài đặt phần mềm hỗ trợ cần thiết:

    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. Thêm tài khoản người dùng xây dựng vòng / phút ( không xây dựng dưới dạng root hoặc là người dùng thực - vấn đề bảo mật sẽ quay trở lại để cắn bạn ).

    sudo adduser builder --home-dir /home/builder \
    --create-home --user-group --groups mock \
    --shell /bin/bash --comment "rpm package builder"
    
  4. Tiếp theo chúng ta cần một môi trường xây dựng.

    su -l builder
    rpmdev-setuptree
    

    Điều này tạo ra cấu trúc thư mục sau:

    ~
    └── rpmbuild
        ├── BUILD
        ├── RPMS
        ├── SOURCES
        ├── SPECS
        └── SRPMS
    
  5. Chúng tôi đang sử dụng một SRPMS đã được chuẩn bị để các tarball SOURCES có thể bị bỏ qua trong trường hợp này và chúng tôi có thể chuyển trực tiếp đến 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. Cấu hình giả (là root)

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

    Vô hiệu hóa các betarepos. Kích hoạt baseupdaterepos.

  7. Khởi tạo cây xây dựng (/ var / lib / mock là mặc định)

    mock --init
    
  8. Nếu chúng tôi đang xây dựng từ SOURCES thì đây là nơi chúng tôi sẽ sử dụng tệp SPEC và sử dụng mock --buildsrpm . . .. Nhưng trong trường hợp này, chúng ta chuyển trực tiếp đến bước xây dựng nhị phân:

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

    Điều này sẽ giải quyết các phụ thuộc của bản dựng và tải chúng xuống (khoảng 95 gói hoặc hơn) vào bản dựng gốc sạch. Sau đó, nó sẽ trích xuất các nguồn và xây dựng nhị phân từ SRPM được cung cấp và để nó vào /var/lib/mock/epel-6-x86_64/result; hoặc trong bất kỳ tùy chỉnh xây dựng vị trí gốc và kiến ​​trúc bạn cung cấp. Sẽ mất nhiều thời gian đấy. Có rất nhiều gói này; đặc biệt là tài liệu.

  9. Nếu mọi việc suôn sẻ thì bạn nên kết thúc với một bộ gói RPM phù hợp để cài đặt thay cho phiên bản phân phối. Đây là những gì tôi đã kết thúc với:

    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. Cài đặt bằng yum hoặc vòng / phút.

    Bạn sẽ yêu cầu git2u-2.5.3-1.ius.el6.x86_64.rpmtối thiểu và các gói hỗ trợ bổ sung như vậy vì nó yêu cầu ( perl-Git2u-2.5.3-1.ius.el6.noarch.rpm) hoặc bạn mong muốn.

    Bản dựng này có sự phụ thuộc theo chu kỳ: git2u-2.5.3-1.ius.el6.x86_64.rpmphụ thuộc perl-Git2u-2.5.3-1.ius.el6.noarch.rpmperl-Git2u-2.5.3-1.ius.el6.noarch.rpmphụ thuộc vào git2u-2.5.3-1.ius.el6.x86_64.rpm. Một cài đặt thẳng với rpmsẽ không thành công.

    Có hai cách để đối phó với nó:

    • Cài đặt cả hai cùng một lúc qua yum:

      yum localinstall \
        git2u-2.5.3-1.ius.el6.x86_64.rpm \
        perl-Git2u-2.5.3-1.ius.el6.noarch.rpm`
      
    • Thiết lập một repo yum địa phương.

      Tôi bao gồm LocalFile.repotệp của mình bên dưới vì nó chứa hướng dẫn về cách thực hiện việc này và cung cấp tệp repo cần thiết cùng một lúc.

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

Bạn cũng có thể được yêu cầu cài đặt trước các gói phụ thuộc bổ sung như perl-TermReadKeycó sẵn từ các kho thông thường.


Nếu bạn không chỉnh sửa tệp spec, tại sao không sử dụng trực tiếp các gói nhị phân IUS?
carlwgeorge

5

Để xây dựng và cài đặt Git hiện đại trên 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

như git nói :

RHEL và các dẫn xuất thường gửi các phiên bản cũ hơn của git. Bạn có thể tải xuống một tarball và xây dựng từ nguồn hoặc sử dụng kho lưu trữ của bên thứ 3 như Dự án Cộng đồng IUS để có được phiên bản git mới hơn.

Có hướng dẫn tốt ở đây . trong trường hợp của tôi (máy chủ Centos7) sau khi cài đặt phải đăng xuất và đăng nhập lại.


4

Xây dựng phiên bản mới nhất gittrên Centos 6/7

Chuẩn bị hệ thống để xây dựng rpms

  1. Cài đặt epel:

    Đối với EL6, sử dụng:

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

    Đối với EL7, sử dụng:

    sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
    
  2. Cài đặt fedpkg:

    sudo yum install fedpkg
    
  3. Tự thêm mình vào nhóm giả (bạn có thể cần phải đăng nhập lại vào máy chủ sau khi thay đổi này):

    sudo usermod -a -G mock $USER
    

Tải xuống git

  1. Tải về gitnguồn:

    fedpkg clone -a git && cd git
    fedpkg sources
    
  2. Xác minh nguồn:

    sha512sum -c sources
    

Xây dựng vòng / phút

  1. Tạo srmp. Sử dụng el6cho RHEL6, el7cho RHEL7.

    fedpkg --dist el7 srpm
    
  2. Xây dựng gói trong giả:

    mock -r epel-7-x86_64 git-2.16.0-1.el7.src.rpm
    
  3. Cài đặt phiên bản mới nhất của gitvòng / phút từ /var/lib/mock/epel-7-x86_64/result/. Lưu ý, trước tiên bạn có thể cần gỡ cài đặt phiên bản git khỏi hệ thống của mình.

Hướng dẫn này dựa trên bài đăng danh sách gửi thư của Todd Zullinger .


1
Câu trả lời chính xác. Giữ nó dưới sự quản lý gói. Tốt hơn nhiều so với việc sử dụng repos không chính thức hoặc cài đặt từ nguồn. Tôi đã luôn tải gói src từ trang gói Fedora thông qua trình duyệt, nhưng đây là một giải pháp sạch hơn nhiều. Cảm ơn!
orodbhen

3

Thêm một câu trả lời bùng binh ở đây. Tôi đã vật lộn để cài đặt git trên một phiên bản Amazon của RHEL 6.0 và điều cuối cùng cứu tôi là ... conda, như trong Ana conda Python.

Tôi đã cài đặt conda trên dòng lệnh từ kho lưu trữ (mã được mô phỏng theo sau này ):

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"

và sau đó chạy

conda install git

và một phiên bản tương đối gần đây git đã được cài đặt. Hôm nay là ngày 26/12/2016 và phiên bản là 2.9.3.


1

Đây là phương pháp của tôi để cài đặt git trên 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

Theo kinh nghiệm của tôi (centos 6.7), bạn cũng nên yum install libcurl-devel.
jgrump2012

1

Điều này có thể không liên quan. Nó dành cho những người không muốn xây dựng git mới nhất trên máy chủ trong khi họ vẫn có thể nhận được git mới nhất.

Tôi nghĩ rằng hầu hết mọi người không thích xây dựng git mới nhất trên CentOS vì các phụ thuộc sẽ làm ô nhiễm máy chủ và bạn phải chạy rất nhiều lệnh. Do đó, tôi có một ý tưởng xây dựng git bên trong container Docker và sau đó cài đặt thực thi thông qua ngàm âm lượng docker. Sau đó, bạn có thể xóa hình ảnh và container.

Vâng, nhược điểm là bạn phải cài đặt docker. Nhưng các phụ thuộc ít nhất được giới thiệu cho máy chủ lưu trữ và bạn không phải cài đặt repo yum khác.

Đây là kho lưu trữ của tôi. https://github.com/wood1986/docker-l Library / trip / master / git


0

Nếu git đã được cài đặt trước tiên hãy xóa git cũ

sudo yum remove git*

Thêm repo IUS CentOS 7

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

Bây giờ hãy kiểm tra phiên bản git sau khi cài đặt gói git2u-all. Nếu docker được cài đặt trên máy của bạn thì ius-release có thể tạo ra sự cố.

git --version

chơi lô tô!!


-3

Có thể rất khó hiểu và nguy hiểm, để thay thế các kho lưu trữ cơ sở ngược dòng bằng các kho bổ trợ mà không cần kiểm tra và suy nghĩ đáng kể. RPMforge, đặc biệt, là moribund hiệu quả và không nhận được cập nhật.

Cá nhân tôi xuất bản các công cụ để xây dựng git 2.4, được gói dưới dạng gói "git24" có tên thay thế, tại https://github.com/nkadel/git24-srpm/ . Hãy thoải mái truy cập và rẽ nhánh nếu bạn muốn các gói khác biệt với các gói hệ thống tiêu chuẩn, giống như các gói "samba" và "samba4" được phân biệt.


1
Đôi khi bạn có thể liên kết với các tài nguyên / trang web của riêng mình, nhưng vui lòng đảm bảo rằng bài đăng của bạn vẫn cung cấp câu trả lời đầy đủ ngay cả khi liên kết của bạn không hoạt động (tình cờ, nó không hoạt động)
Hayden Schiff

Xin hãy sửa lỗi đánh máy.
Stefan Lasiewski
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.