/ / Cygwin git tab dokončení - bash, cygwin, bash-dokončení

Cygwin git dokončenie karty - bash, cygwin, bash-dokončenie

Nainštaloval som Cygwin na Windows a jedným z predvolených balíkov je dokončenie karty git, ale nemám dokončenie karty.

Urobil som nejaké vyhľadávanie a našiel poznámku, ktorá hovorí, že nie je v predvolenom nastavení povolená. Kopíroval som skel .bashrc and .bash_profile to ~ and in .bashrc Odložil som riadky na dokončenie a potom znovu spustil konzolu. Stále nič.

Potom som si všimol, že súbor .bash_completion nebol v priečinku /etc, tak som našiel online kópiu a umiestnil ju na miesto, ale stále nemám dokončené git.

Zdá sa, že by mala existovať aj /etc/bash_completion.d s adresárom git/ v tom, ale nemám ani to.

odpovede:

44 odpoveď № 1

Aktualizované na rok 2016: Nainštalujte balík bash-completion.


8 pre odpoveď č. 2

Vyššie uvedená odpoveď sa vytlačí bash: have: command not found pre takmer každý skript v bash_completion.d /. Táto odpoveď z prepojeného príspevku to vyrieši pre mňa:

if [ -f /etc/bash_completion ]; then . /etc/bash_completion fi

Skript / program / etc / bash_completion už obsahuje skripty v súbore /etc/bash_completion.d a tiež definuje niektoré funkcie potrebné pre zahrnuté skripty.

Majte však na pamäti, že sa tým spomalínačítanie škrupiny, najmä v Cygwine (spomalenie na asi 1 sekundu pre mňa). Aby ste to zmiernili, môžete premenovať všetko v súbore /etc/bash_completion.d/ na *.baka potom odstráňte .bak selektívne z príkazov, na ktorých vám skutočne záleží (vďaka Pomalý čas načítania bash v cygwine).

aktualizácia: Súbor /etc/bash_completion magicky zmizol (vyzerá to, že to bolo kvôli aktualizácii balíka na dokončenie bash na 2.1-1). Ako rýchle riešenie som práve vytvoril symbolický odkaz v / etc /usr/share/bash-completion/bash_completion.

Aktualizácia 2: Prečítanie pôvodnej otázky, problém s tým, že nemá /etc/bash_completion.d adresár môže súvisieť s neinštalovaním balíka „bash-complete“ v Cygwin.


6 pre odpoveď č. 3

V mojom .bashrc

 for file in /etc/bash_completion.d/* ; do
source "$file"
done

3 pre odpoveď č. 4

Inštalácia balíka „git-complete“ spusteného z cmd.exe:

cyg-get git-completion

Potom už nemusíte upravovať svoj .bashrc.


3 pre odpoveď č. 5

Musel som nainštalovať nasledujúce balíčky Cygwin:

  • bash-completion
  • bash-completion-devel

2 pre odpoveď č. 6

Od mája 2016 sa mi podarilo dokončiť dokončenie karty git & svn jednoduchou inštaláciou balíka bash-dokončení pomocou inštalačného programu Cygwin (v2.874), ktorý nájdete tu: https://www.cygwin.com/install.html, Nezabudnite vybrať možnosť „Inštalovať z Internetu“. Balík na dokončenie bash je uvedený v kategórii Shells.


2 pre odpoveď č. 7

Narazil som na rovnaký problém pred niekoľkými dňami a inštaláciou bash-completion nestačilo.

Tento problém bol vyriešený v mojom prípade sťahovania https://github.com/git/git/blob/master/contrib/completion/git-completion.bash a skopírovať ho do /etc/bash_completion.d/

Pozri tiež: https://git-scm.com/book/en/v1/Git-Basics-Tips-and-Tricks