Как вы устанавливаете hub (git wrapper) на Ubuntu с работой с автозаполнением и документацией пользователя?

12

В соответствии с официальными документами вы просто загружаете предварительно скомпилированный двоичный файл, но это оставит такие вещи, как man documentation и автозаполнение не работает.     

задан Bryce Drennan 25.08.2016 в 06:09
источник

3 ответа

8

Вы можете использовать этот PPA для установки hub в качестве пакета:

sudo add-apt-repository ppa:cpick/hub
sudo apt-get update
sudo apt-get install hub
    
ответ дан Eugene Yarmash 10.04.2018 в 14:03
4

Установить концентратор

  1. Загрузить концентратор из Github

    Ссылка

  2. Извлеките его. Я извлек его в папку Apps/ в моем доме и переименовал его в hub-linux . Итак, в моей настройке полный путь к папке bin равен /home/anwar/Apps/hub-linux/bin

  3. Теперь откройте файл ~/.bashrc и добавьте двоичный путь хаба к переменной среды $PATH . Добавление строки, как показано ниже, будет работать.

    ### Adds Hub-linux
    export PATH="$PATH:$HOME/Apps/hub-linux/bin/"

Не забудьте использовать фактический путь в настройке

Добавьте завершение Bash

Чтобы добавить завершение bash, нам нужно сообщить bash, чтобы исходный файл завершен с помощью hub-архива. Файл завершения находится в папке etc извлеченной папки концентратора. Для этого

Откройте .bashrc и напишите там эти строки

### Load Hub Linux bash completion
if [ -f $HOME/Apps/hub-linux/etc/hub.bash_completion.sh ] ; then
     . $HOME/Apps/hub-linux/etc/hub.bash_completion.sh
fi

Не забудьте заменить точный путь файла hub.bash_completion.sh в соответствии с вашей настройкой

Теперь вы должны иметь возможность использовать завершение хаба хаба

Добавить man-страницу Hub в базу данных man

Персональная страница Hub действительно пришла с архивом. Он находится в папке share . Чтобы добавить man-страницу, нам нужно поместить ее в каталог справочной страницы.

Чтобы сделать это, откройте терминал и cd в извлеченном архиве концентратора. Предполагая, что ваш текущий каталог находится в том же каталоге, в котором находятся %%_de%, bin , share хаба, используйте эту команду для копирования manpage

sudo cp -r share/ /usr/
sudo chmod 644 /usr/share/man/man1/hub.1

Теперь вы можете использовать страницу руководства хаба, используя команду README.md .

Если вы не можете сразу использовать man hub , используйте man hub , чтобы обновить man db системы.

    
ответ дан Anwar 25.08.2016 в 09:04
1

Этот скрипт должен выполнить работу на Ubuntu 16.04 с помощью zsh.

# Install binary and documentation
wget https://github.com/github/hub/releases/download/v2.2.9/hub-linux-amd64-2.2.9.tgz
tar zvxvf hub-linux-amd64-2.2.9.tgz
sudo ./hub-linux-amd64-2.2.9/install

# Setup autocomplete for zsh:
mkdir -p ~/.zsh/completions
mv ./hub-linux-amd64-2.2.9/etc/hub.zsh_completion ~/.zsh/completions/_hub
echo "fpath=(~/.zsh/completions $fpath)" >> ~/.zshrc
echo "autoload -U compinit && compinit" >> ~/.zshrc

# add alias
echo "eval "$(hub alias -s)"" >> ~/.zshrc

# Cleanup
rm -rf hub-linux-amd64-2.2.9

Альтернативно для Ubuntu 16.04 с bash:

# Install binary and documentation
wget https://github.com/github/hub/releases/download/v2.2.9/hub-linux-amd64-2.2.9.tgz
tar zvxvf hub-linux-amd64-2.2.9.tgz
sudo ./hub-linux-amd64-2.2.9/install

# Setup autocomplete for bash:
mkdir -p ~/.bash/completions
mv ./hub-linux-amd64-2.2.9/etc/hub.bash_completion.sh ~/.bash/completions/_hub
echo "if [ -f ~/.bash/completions/_hub ]; then" >> ~/.bashrc
echo "    . ~/.bash/completions/_hub" >> ~/.bashrc
echo "fi" >> ~/.bashrc

# add alias
echo "eval "$(hub alias -s)"" >> ~/.bashrc

# Cleanup
rm -rf hub-linux-amd64-2.2.9

Тестирование:

hub version
    
ответ дан Bryce Drennan 25.08.2016 в 06:09