De acuerdo con los documentos oficiales , solo descarga un binario precompilado, pero esto dejaría cosas como la man
documentación y el autocompletado que no funcionan.
De acuerdo con los documentos oficiales , solo descarga un binario precompilado, pero esto dejaría cosas como la man
documentación y el autocompletado que no funcionan.
Respuestas:
Puede usar este PPA para instalar hub
como paquete:
sudo add-apt-repository ppa:cpick/hub
sudo apt-get update
sudo apt-get install hub
Hub está disponible como complemento ahora. https://snapcraft.io/hub
Puedes instalarlo con sudo snap install --classic hub
.
Descargar Hub desde Github
Extraelo. Lo extraje al Apps/
directorio de mi casa y le cambié el nombre hub-linux
. Entonces, en mi configuración, la ruta completa a la bin
carpeta es/home/anwar/Apps/hub-linux/bin
Ahora abra el ~/.bashrc
archivo y agregue la ruta binaria del concentrador a la $PATH
variable de entorno. Agregar una línea como la siguiente funcionará.
### Adds Hub-linux
export PATH="$PATH:$HOME/Apps/hub-linux/bin/"
No olvides usar la ruta real en tu configuración
Para agregar la finalización de bash, necesitamos decirle a bash que obtenga el archivo de finalización que viene con hub-archive. El archivo de finalización está en la etc
carpeta de la carpeta del concentrador extraído. Para hacerlo
Abre el .bashrc
y escribe allí estas líneas
### 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
No olvide reemplazar la ruta exacta del hub.bash_completion.sh
archivo de acuerdo con su configuración
Ahora, debería poder utilizar la finalización de bash de concentrador
man
base de datosLa página de manual de Hub realmente vino con el archivo. Está en la share
carpeta Para agregar la página de manual, necesitamos ponerla en el directorio de la página de manual.
Para hacerlo, abra una terminal y cd en el archivo concentrador extraído. Asumiendo que su directorio actual se encuentra en el mismo directorio en el centro de bin
, share
, README.md
residen, utilice este comando para copiar la página de manual
sudo cp -r share/ /usr/
sudo chmod 644 /usr/share/man/man1/hub.1
Ahora puede usar la página de manual del concentrador usando el man hub
comando.
Si no puede usarlo inmediatamente man hub
, úselo sudo updatedb
para actualizar man db del sistema.
Este script debería hacer el trabajo en Ubuntu 16.04 con 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
Alternativamente para Ubuntu 16.04 con 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
Instalación de prueba:
hub version
echo "eval "$(hub alias -s)"" >> ~/.zshrc
. Esto parece una cosa zsh, no una cosa bash? (Soy un novato * nix, entonces, ¿qué sé?)