Pertanyaan Bagaimana Anda menginstal hub (git wrapper) di Ubuntu dengan autocomplete dan dokumentasi pria berfungsi?


Menurut dokumen resmi Anda hanya mengunduh biner yang sudah dikompilasi sebelumnya tetapi ini akan meninggalkan hal-hal seperti man dokumentasi dan pelengkapan otomatis tidak berfungsi.


11
2017-08-25 04:09


asal


Jika Anda telah menjawab pertanyaan Anda, Anda mungkin ingin menerima siapa pun dari jawaban. - Anwar


Jawaban:


Anda bisa menggunakan ini PPA untuk memasang hub sebagai paket:

sudo add-apt-repository ppa:cpick/hub
sudo apt-get update
sudo apt-get install hub

7
2018-04-10 12:03



Tahukah Anda jika ini menyiapkan pelengkapan otomatis dan alias git? - Bryce Drennan
@Bryce Sepertinya paket terbaru (2.2.9-0ubuntu0ppa1) berisi skrip penyelesaian bash, tetapi tidak ada skrip manpages atau postinstall. - Eugene Yarmash


Pasang Hub

  1. Unduh Hub dari Github

    https://github.com/github/hub/releases

  2. Ekstrak itu. Saya telah mengekstraknya Apps/ direktori di rumah saya dan beri nama untuk itu hub-linux. Jadi, di setup saya, lintasan lengkap ke bin folder adalah /home/anwar/Apps/hub-linux/bin

  3. Sekarang buka ~/.bashrc file dan tambahkan jalur biner hub ke $PATH variabel lingkungan. Menambahkan baris seperti di bawah ini akan berfungsi.

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

Jangan lupa untuk menggunakan jalur sebenarnya di setup Anda

Tambahkan Penyelesaian Bash

Untuk menambahkan bash completion, kita perlu memberi tahu bash untuk mendapatkan sumber file penyelesaian dengan hub-archive. File penyelesaiannya ada di etc folder folder hub yang diekstraksi. Untuk melakukannya,

Buka .bashrc dan tulis di sana garis-garis ini

### 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

Jangan lupa untuk mengganti jalur yang tepat hub.bash_completion.sh file sesuai dengan pengaturan Anda

Sekarang, Anda harus dapat menggunakan penyelesaian bash hub

Tambahkan halaman manual Hub ke man database

Halaman manual Hub benar-benar datang dengan arsip. Itu ada di dalam share map. Untuk menambahkan halaman manual, kita perlu memasukkannya ke direktori halaman manual.

Untuk melakukannya, Buka terminal dan cd ke arsip hub yang diekstraksi. Dengan asumsi direktori Anda saat ini ada di direktori yang sama di mana hub bin, share, README.md tinggal, gunakan perintah ini untuk menyalin halaman manual

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

Sekarang Anda dapat menggunakan halaman manual hub man hub perintah.

Jika Anda tidak dapat langsung menggunakannya man hub, gunakan sudo updatedb untuk me-refresh man db dari sistem.


4
2017-08-25 07:04





Skrip ini harus melakukan pekerjaan pada Ubuntu 16.04 dengan 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

Alternatif lain untuk Ubuntu 16.04 dengan 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

Instalasi tes:

hub version

1
2017-08-25 04:09



Skrip bash Anda berisi baris echo "eval "$(hub alias -s)"" >> ~/.zshrc. Ini terlihat seperti hal zsh, bukan bash thing? (Saya seorang pemula * nix, jadi apa yang saya tahu) - Sam Axe
Terima kasih banyak! - Bryce Drennan