คุณติดตั้งฮับ (git wrapper) บน Ubuntu ด้วยการเติมข้อความอัตโนมัติและเอกสารคู่มือมนุษย์ทำงานอย่างไร


19

ตามเอกสารอย่างเป็นทางการคุณเพียงแค่ดาวน์โหลดไบนารีที่คอมไพล์ล่วงหน้า แต่สิ่งนี้จะทำให้สิ่งต่าง ๆ เช่นmanเอกสารประกอบและการเติมข้อความอัตโนมัติไม่ทำงาน


หากคุณตอบคำถามของคุณคุณอาจต้องการยอมรับคำตอบของใครก็ได้
อันวาร์

คำตอบ:


16

คุณสามารถใช้PPAนี้เพื่อติดตั้งhubเป็นแพ็คเกจ:

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

คุณรู้หรือไม่ว่าสิ่งนี้ตั้งค่าการเติมข้อความอัตโนมัติและนามแฝงคอมไพล์หรือไม่?
Bryce Drennan

@Bryce ดูเหมือนว่าแพคเกจล่าสุด (2.2.9-0ubuntu0ppa1) มีสคริปต์การเติมเต็มของ bash แต่ไม่มี manpages หรือสคริปต์การติดตั้งภายหลัง
Eugene Yarmash

1
ppa: cpick / hub ไม่ได้รับการอัปเดตในปีและให้ฮับรุ่นเก่ามาก
Mike Slinn

ข้อมูลที่ทันสมัยมากขึ้นเกี่ยวกับวิธีเพิ่ม repo ที่มีฮับสามารถพบได้ที่นี่: github.com/github/hub/issues/718
Thomas David Baker


6

ติดตั้ง Hub

  1. ดาวน์โหลด Hub จาก Github

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

  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 Completion

ในการเพิ่ม bash complete เราจำเป็นต้องบอก bash ให้แก่ซอร์สไฟล์ที่มาพร้อมกับ hub-archive ไฟล์เสร็จสมบูรณ์อยู่ใน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ไฟล์ตามการตั้งค่าของคุณ

ตอนนี้คุณควรจะสามารถใช้การทุบตีฮับได้สำเร็จ

เพิ่ม manpage ของ Hub เข้ากับmanฐานข้อมูล

หน้า man ของ Hub มาพร้อมกับไฟล์เก็บถาวรจริงๆ มันอยู่ในshareโฟลเดอร์ ในการเพิ่ม manpage เราจำเป็นต้องใส่ไว้ในไดเรกทอรี man page

ในการดำเนินการดังกล่าวให้เปิดเทอร์มินัลและซีดีไปยังที่เก็บถาวรฮับที่แยกออกมา สมมติว่าไดเรกทอรีปัจจุบันของคุณอยู่ในไดเรกทอรีเดียวกันที่ศูนย์กลางbin, share, README.mdReside ใช้คำสั่งนี้เพื่อคัดลอก manpage

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

ตอนนี้คุณสามารถใช้หน้าคู่มือของฮับโดยใช้man hubคำสั่ง

ถ้าคุณไม่สามารถใช้งานได้ทันทีman hubใช้sudo updatedbเพื่อฟื้นฟูคนฐานข้อมูลของระบบ


2

สคริปต์นี้ควรทำงานบน 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 กับทุบตี:

# 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 ไม่ใช่สิ่งที่ทุบตี? (ฉันเป็นมือใหม่หัด * ฉันจะรู้ได้ยังไง)
Sam Axe
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.