Как установить последнюю версию git на Debian 8?

12

У меня есть некоторые проблемы, git-lfsи я думаю, что обновление до последней версии gitможет решить эту проблему. Текущая версия gitв Debian есть 2.1.4, текущая стабильная версия на официальном сайте 2.6.4. Могу ли я собирать только из исходного кода или, может быть, я могу добавить внешний репозиторий?

Виталий Зданевич
источник
Подобный вопрос: unix.stackexchange.com/questions/33617/…
Иджаз Ахмад Хан
1
Установка из исходного кода - это процедура, которая может варьироваться от приложения к приложению. В случае с Git, установка по умолчанию из исходного кода (на момент написания) фактически выполняется в домашнем каталоге пользователя: см. Его файл INSTALL . Таким образом, от такой установки должно быть довольно безболезненно отказаться, если по какой-то причине она не работает для вас, особенно если вы заранее делаете снимок / резервную копию системы.
Сампаблокупер

Ответы:

10

По состоянию на декабрь 2015 года Debian stretch / sid имеет версию git 2.6.4 . Если вы не хотите обновлять весь дистрибутив, вы можете посмотреть на подходящее закрепление, чтобы получить только git и все необходимые зависимости от stretch / sid. Тем не менее, многие ребята из Debian скажут вам, что это плохая идея , поэтому единственное официально рекомендуемое решение - сборка из исходного кода или ожидание / запрос бэкпорта .

pericynthion
источник
3
Спасибо, я добавил в /etc/apt/sources.listстроку deb http://ftp.us.debian.org/debian testing main contrib non-freeи после этого sudo apt-get updateи sudo apt-get install git/testing.
Виталий Зданевич
7

Бэкпорт git из тестирования Debian, нестабильного или экспериментального достаточно тривиален. См. Как я могу установить более новые версии программного обеспечения, чем то, что предоставляет Debian? , Должно работать что-то простое apt-get source -t unstable git, отслеживаемое debuild -uc -usвнутри директории с исходным кодом. Обратите внимание, что эти две команды должны запускаться как пользователь, а не как пользователь root.

Возможно, вам придется установить некоторые зависимости сборки. apt-get build-dep gitвероятно, будет работать в этом случае. Обратите внимание, что эта команда запускается от имени пользователя root, а не пользователя.

Пожалуйста, прокомментируйте, если вы пытаетесь сделать это и вам нужно больше деталей.

Фахим Митха
источник
5

Это работало над докерским контейнером Debian ( php: 5-apache ).

ПРИМЕЧАНИЕ: это в настоящее время (март 2018) не работает с ошибкой libc6-devзависимостей.

 RUN echo "deb http://ftp.us.debian.org/debian testing main contrib non-free" >> /etc/apt/sources.list \
         &&      apt-get update              \
         &&      apt-get install -y git      \
         &&      apt-get clean all
kujiy
источник
1

Это может помочь:

$ sudo add-apt-repository ppa:git-core/ppa
$ sudo apt-get update
$ sudo apt-get install git  
Светлин Тончев
источник
3
Я получаю 404 от этого репо вupdate
Виталий Зданевич
3
ppa работает только на Ubuntu, а не на Debian. Пожалуйста, смотрите мой ответ.
kujiy
1

То, что предложил Светлин Тончев, сработало бы из коробки, только если OP использовал Ubuntu, а здесь это не так. Однако при запуске add-apt-repository добавленный источник будет зависеть от имени вашей ОС. Например, если вы перейдете в /etc/apt/sources.list.d/, вы можете найти файл с именем git-core-ppa-jessie.list (или аналогичный), содержащий следующие строки:

deb http://ppa.launchpad.net/git-core/ppa/ubuntu Джесси Майн

deb-src http://ppa.launchpad.net/git-core/ppa/ubuntu Джесси Майн

Однако такого хранилища не существует, и поэтому ОП получил 404.

Возможное решение этой конкретной проблемы - вручную отредактировать вышеуказанный файл и заменить jessie на xenial.

Ксавье Альварес
источник