根据官方文档,您只需下载预编译的二进制文件,但这将导致
man
文档和自动补全功能无法正常工作。hub
作为一个软件包:sudo add-apt-repository ppa:cpick/hub
sudo apt-get update
sudo apt-get install hub
正如PatKilg在评论中指出的那样,Hub的维护者现在不鼓励使用snap。
Hub现在可以作为一个snap包使用。https://snapcraft.io/hub
您可以使用sudo snap install --classic hub
进行安装。
从 Github 下载 Hub
解压缩。我将其解压到我的主目录下的 Apps/
文件夹,并将其重命名为 hub-linux
。所以,在我的设置中,bin
文件夹的完整路径是 /home/anwar/Apps/hub-linux/bin
现在打开 ~/.bashrc
文件,并将 hub 二进制文件的路径添加到 $PATH
环境变量中。添加如下一行即可。
### Adds Hub-linux
export PATH="$PATH:$HOME/Apps/hub-linux/bin/"
### 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
文件的确切路径
现在,您应该能够使用hub bash完成
man
数据库中Hub的手册实际上是随存档一起提供的。它位于share
文件夹中。要添加手册,我们需要将其放入手册目录中。
为此,请打开终端并cd到提取的hub存档中。假设您当前的目录与hub的bin
、share
、README.md
所在的目录相同,请使用以下命令复制手册:
sudo cp -r share/ /usr/
sudo chmod 644 /usr/share/man/man1/hub.1
man hub
命令来查看hub的手册页面。man hub
,请使用sudo updatedb
来刷新系统的man数据库。# 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
# 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
echo "eval "$(hub alias -s)"" >> ~/.zshrc
。这看起来像是 zsh 的东西,而不是 bash 的?(我是一个 *nix 新手,所以我知道什么呢) - Sam Axe