Завершення команд git


16

Нещодавно я перейшов від використання вікна Ubuntu за останні 7 років до Mac. Я читав інші повідомлення типу Перехід з Ubuntu на OS X і я втратив і У чому різниця між iTerm2 і Terminal?

Чому iTerm2 і Terminal не заповнюють аргументи для команди?

Наприклад. Якщо я зроблю це gi + Tab , це автозаповнює це слово git що добре. Коли я додаю пробіл і спробую remo + Tab , чому я не отримую її для автозавершення remote як у Ubuntu. Після слова потрібно ввести все вручну git. Те ж саме для інших команд.

Я роблю щось неправильно або щось відсутнє?

(Зауважте, що я не говорю про cmd + ; ярлик, який автозавершує раніше введені записи в iTerm2.)


1
Термінал і iTerm2 не завершують команду Це оболонка і її додавання, які можуть бути однаковими в Linux і OSX, тому вам потрібно вказати, що ваша повна установка в Linux і дублювати її в OSX.
Mark

Ви хочете автозаповнення для git - див apple.stackexchange.com/q/55875/24565
Michael Durrant

Відповіді:


12

Найпростіший спосіб отримати автозавершення на OS X - це перемикання оболонки на zsh.

Ви можете перевірити речі, виконавши їх zsh в iTerm і терміналі, перш ніж перейти вище. Якщо ви дійсно хочете дотримуватися bash Ви можете почати з цих двох питань:


3
Солодкий! zsh добре! Ніколи не турбувався перейти від bash :). Update: Використання zsh з о-мі-zsh дивно.
rgamber

ahhh любов о-мі-zsh
Prefix

13

Рішення при переході з ubuntu полягає у використанні homebrew, менеджер пакетів для Mac OSX . Зокрема, для git, Ви включили ряд доповнень, включаючи завершення bash. Це буде справедливо і для інших програм, які є faliliar для developpers, як make.

У 2 кроки:

  1. встановити з ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
  2. Запустити brew doctor щоб правильно встановити ваш шлях
  3. Встановлення завершення git і bash: brew install git bash-completion
  4. Додайте команду return у попередньому кроці .bash_profile.
  5. Перезапустіть сеанси bash після запису нових інструментів і конфігурації у вашу файлову систему.

Більше про це як .


3

У мене є дві пропозиції:

  1. використання риба , це дійсно просто і легко

    a. розширити його за допомогою о-мі-риба

  2. zsh з о-мі-зш. zsh вже встановлено, тому вам не потрібно багато робити.

    a. chsh -s /bin/zsh

    b. Вийти та ввійти знову

    c. виконати це, щоб встановити о-мі-zsh wget --no-check-certificate https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O - | sh докладніше тут: https://github.com/robbyrussell/oh-my-zsh

я використовую oh-my-zsh але fish це також добре.


3

Це трохи відхиляє цю проблему, якщо хтось захоче зберегти версію Git, що надається Apple, у своїй системі.

Ви можете створювати псевдоніми у файлі .gitconfig у вашому домашньому каталозі для коротших команд git. Наприклад, у мене встановлено git git st працює git status замість цього.

Приклади псевдонімів у .gitconfig:

[alias]
    co = checkout
    ci = commit
    st = status
    br = branch

3

Один із варіантів, який може допомогти, це використання .git-completion.bash для bash git автозавершення.

Вона дозволяє вводити команди git, а потім мати автозаповнення для віддаленого імені (наприклад, "походження" або "heroku"), а потім (і більш суттєво) для назв гілок сховища.

Подивитися https://apple.stackexchange.com/a/55886/24565

Завантажити файл з
https://github.com/git/git/blob/master/contrib/completion/git-completion.bash


2

Для тих, хто шукає рішення для завершення команд для bash, який так легко використовувати як zsh + oh-my-zsh, зараз є проект bash-it . Котрий, за його власними словами, є "безсоромний ripoff о-мі-zsh" - нічого поганого з що дійсно!

Вона встановлює плагін, подібний до архітектури, як, наприклад, oh-my-zsh, де ви можете легко приносити речі до вашого середовища і отримувати нові речі за допомогою синхронізації з їхнім проектом github.

Установка в три простих кроки:

  1. Перевірте клон цього репо: git clone https://github.com/revans/bash-it.git ~/.bash_it
  2. Запустити ~/.bash_it/install.sh (він автоматично створює резервні копії вашого ~/.bash_profile )
  3. Відредагуйте свій ~/.bash_profile файл, щоб налаштувати bash-it.

Якщо ви боїтеся повного перемикання на zsh, bash-it це приємна середня земля, яка тримає вас bash але дає вам багато потужних плагінів для розширення вашого середовища.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.