Bash

git tab-completion 不適用於 Debian Wheezy,但適用於 Squeeze

  • July 18, 2012

我的問題是關於 git command tab-completion,即當我鍵入git stat 並點擊 Tab 時,它會將命令行完成到git status. (在適用的情況下,這也適用於遠端名稱和分支名稱。)

讓我感到困惑的是,如果沒有對任何機器進行額外配置,在具有較舊 git 和穩定 Debian 的機器上它可以工作,而在筆記型電腦上則不能。不應該反過來嗎?花哨的東西不應該傾向於測試而不是穩定嗎?

在我的 VPS 上,其中:

aloism@srv:~$ git --version
git version 1.7.2.5
aloism@srv:~$ lsb_release -a
No LSB modules are available.
Distributor ID:     Debian
Description:        Debian GNU/Linux 6.0.5 (squeeze)
Release:            6.0.5
Codename:           squeeze

在我的筆記型電腦上:

lennycz@laptop:~$ git --version
git version 1.7.10.4
lennycz@laptop:~$ lsb_release -a
No LSB modules are available.
Distributor ID:     Debian
Description:        Debian GNU/Linux testing (wheezy)
Release:            testing
Codename:           wheezy
lennycz@laptop:~$ 

~/.gitconfig 在任何盒子上都沒有什麼有趣的。

誰能解釋一下?git中的錯誤?還有什麼研究構想嗎?

原因是 bash-completion 包(它可以完成將其腳本添加到 /etc/bash_completion 的其他包)沒有安裝在筆記型電腦上。

不應該反過來嗎?花哨的東西不應該傾向於測試而不是穩定嗎?

好吧,這聽起來很合乎邏輯,但是 Debian 有點打破了這個簡約原則,因為 Lenny 在安裝時也預設推薦了軟體包。不過,您可以禁用此行為

顯然 Debian 安裝程序沒有為 Wheezy 使用此設置,原因是另一個問題。

引用自:https://unix.stackexchange.com/questions/43418