Yum не устанавливает последнюю версию Git на Centos6

16

Когда я иду в раздел загрузки Gits, там упоминается, что последняя версия - 1.8, и я могу установить ее yum install gitна Fedora. Я использую CentOS6, поэтому эта команда также должна работать для меня, но yum говорит мне:

Setting up Install Process
Package git-1.7.1-2.el6_0.1.x86_64 already installed and latest version
Nothing to do

Мой ням указывает на старые репозитории? Или я что-то делаю?

Благодарность!

РЕДАКТИРОВАТЬ : я понимаю, что поставщики не всегда в курсе своего списка пакетов, значит ли это, что документация на сайте git неверна из-за того, что они говорят мне загружать ее с помощью yum, в то время как поставщики не обновили свои списки пакетов?

Реза Санайе
источник
1
Как люди из Git могут выступать за различные упаковщики, представляющие различные дистрибутивы Linux.
mdpc
5
Как выглядит утверждение? Легче всего установить Git на Linux с помощью предпочтительного менеджера пакетов, который противоречит идее о том, что вы не получите самую последнюю версию? Это проще всего установить упакованную версию мерзавца. Большинству людей не нужна абсолютно последняя версия git. Если вы хотите жить на переднем крае, вам не удастся выбрать легкий путь. Загрузите исходный код и постройте его или найдите подходящие сторонние репозитории, где кто-то другой выполнил тяжелую работу.
Зоредаче
Red Hat редко меняет основную версию программного пакета для поддержания стабильности. Поскольку git сегодня находится на 1.7.1, он всегда может оставаться на 1.7.1 (исправления безопасности перенесены в). Вам остается только установить исходный код или установить RPM из стороннего репозитория. Приведенное ниже решение @ muness отлично сработало, и теперь я нахожусь на 1.7.11, что достаточно для поддержки большинства функций, которые мне нужны на github.com.
Стефан Ласевский
1
Означает ли это, что документация на сайте git неверна - да, их сайт неверен. Github.com - отличный инструмент, но их документация определенно содержит ошибки и в некоторых местах неоднозначна. Некоторые критики укажут на подобные ошибки и скажут: «Да, они« проворные ».
Стефан Ласевский
Fedora и CentOS не одно и то же. Они оба основаны на RedHat Linux, но вы не можете предполагать, что данная команда всегда будет иметь тот же эффект, что и другая. Управление пакетами, в частности, является одной из областей наибольшего расхождения.
Бен Коллинз

Ответы:

11

Загрузить исходный код и скомпилировать его очень легко, я даже нашел метод RPMForge довольно громоздким.

Загрузите исходный код Git 2.11 и

    make configure 
    ./configure --prefix=/usr
    make all
    sudo make install install-doc install-html

Мне нужно было установить пару зависимостей, прежде чем make полностью преуспеет.

sudo yum install libcurl-devel zlib-devel asciidoc xmlto
Реза Санайе
источник
Я сделал это с исходным кодом Git 2.2 на новой коробке CentOS 6 и должен был установить zlib-develв дополнение к libcurl-devel.
Брайан
Только что попробовал это на CentOS 6.6, мне также нужно было установить asciidoc и xmlto.
jfklein
Спасибо, не возражаете обновить ответ?
Реза Санаи
Если у вас уже есть GIT, то вы можете скачать последнюю версию, используя это:git clone https://github.com/git/git
Уэсли Аббенхуис
10

Вот что сработало для меня:

  1. Включен RPMForge
  2. yum install yum-plugin-priority # установить плагин yum priority через
  3. Включил репозиторий RPM Forge Extras, отредактировав /etc/yum.repos.d/rpmforge.repo и изменив значение «включено» на 1 в разделе «rpmforge-extras». Я также увеличил приоритет обоих репозиториев rpmforge до 1, добавив приоритет = 1 в оба раздела.
  4. ням удалить мерзавца
  5. yum clean all && yum update && yum install git
muness
источник
4
RPMForge / RepoForge - мертвый проект. Это не поддерживается. НЕ ИСПОЛЬЗУЙ. Смотрите также github.com/repoforge/rpms/issues/375. Есть ли еще какой-нибудь репозиторий, содержащий последнюю версию git?
Wooff
6

Ваш поставщик ОС (проект CentOS), возможно, еще не создал пакет для последней версии git (или, возможно, он не планирует это делать, а вместо этого намеревается придерживаться серии 1.7.x в CentOS 6).

Программное обеспечение волшебным образом не появляется в упаковочных системах в день, когда оно выпущено его автором - пакеты должны быть собраны, протестированы, одобрены и отправлены. Если вам требуется версия, которую ваш поставщик не выпускает, вы всегда можете создать ее самостоятельно ...

voretaq7
источник
Да, я понимаю концепцию, так что Git на их веб-сайте не так? "Чтобы получить 1,8 используйте ням"?
Реза Санаи
5
Люди из Git не могут говорить за различные упаковщики, представляющие различные дистрибутивы Linux.
mdpc
2
@RezaSanaie Где вы найдете эту цитату на сайте git (git-scm.com). Они намного умнее, чем предъявлять такие требования. Как Zoredache отметил, что они говорят , что это ПРОСТОЙ использовать менеджер пакетов ОС (чтобы получить в версии мерзавца). Если вам нужны новейшие и лучшие, вы должны построить его самостоятельно.
voretaq7
2
Когда в нем написано «Последний стабильный выпуск 1.8.0 Примечания к выпуску (2012-10-21) Загрузка для Linux», и я нажимаю на него, я обычно ожидаю получить это
Реза Санаи
1
@RezaSanaie - в таком случае я могу предложить вам отправить письмо Git по электронной почте и подать жалобу о том, как они сформулировали свой сайт. Это не изменит ситуацию, но может прояснить ситуацию в будущем.
Марк Хендерсон
1

Для обеспечения стабильности корпоративные дистрибутивы, такие как CentOS, обычно придерживаются основной версии инструментов, которая присутствовала на момент выпуска ОС. Сторонние репозитории могут использоваться для повышения до более высоких версий, но это часто не является необходимым. Если Git 1.7 хорошо работает для вас, вы должны хорошо придерживаться его.

ceejayoz
источник
3
Люди из Git не могут говорить за различные упаковщики, представляющие различные дистрибутивы Linux.
mdpc
Эта. В основном, когда кто-то использует CentOS или RHEL, они часто думают, что решили использовать стабильную популярную среди предприятий ОС. На самом деле они решили: мы не хотим никакой новой функциональности для каких-либо программных исправлений безопасности. Супер-стабильная == супер-старая функциональность.
Кубанчик
1

CentOS 6 поддерживает «параллельную» вселенную новых компиляторов и инструментов, которая не мешает старым версиям. Ты хочешь

yum install devtoolset-2

Как только он установлен, сделайте

scl enable devtoolset-2 bash

который изменит ваш путь. Вы получите старую версию Git In /usr/bin/gitи более новую версию /opt/rh/..../git. Более новый - 1.8.4 /.

Вы также получите более новую версию g ++ (4.8) и т. Д.

Вам также понадобится последняя версия devtoolset-2. Подробную информацию о devtoolset-2 можно найти в другом ответе: /superuser/381160/how-to-install-gcc-4-7-x-4-8-x-on-centos/676337# 676337

Марк Лаката
источник
Заманчиво, но не поддерживается на моем CentOS 6.5, как установлено моей командой Ops.
MarkHu
0

Используйте хранилище IUS ( https://ius.io/ ), как указано на официальном веб-сайте git: ( https://git-scm.com/download/linux )

Следуйте этим инструкциям:

rpm -U https://dl.iuscommunity.org/pub/ius/stable/CentOS/7/x86_64/git2u-all-2.16.2-1.ius.centos7.noarch.rpm && yum install -y git

Сушант-hiray
источник
-1

Пошаговое руководство здесь . Многие решения требуют немного времени. Ссылка на ссылку была самым быстрым способом для меня.

мОПС
источник