Тонкая настройка автозаполнения zsh git

Я просто переключился с bash на использование zsh 4.3.4 на Ubuntu Hardy. Я развиваюсь с помощью git, и я постоянно борюсь с пополнениями git по умолчанию: завершение имени файла пытается быть умным, обнаруживая, что вы добавили или удалили (используя git-ls-файлы), но иногда это становится неправильным — Например, если вы находитесь в подкаталоге. Он также не знает о моих собственных git-псевдонимах (например, git ci как псевдоним для фиксации).

Zsh superusers, как мне улучшить эту ситуацию?

  • Я не могу удалить Git
  • Настройка частной реплики GIT
  • Использование директивы IdentityFile в ssh_config при использовании AgentForwarding
  • Git vs SVN: эффективность хранения веб-сайта
  • Как заставить git не запрашивать парольную фразу для ssh-ключа на окнах?
  • Diff to HEAD с PHP Storm?
  • Вот некоторые из моих мыслей, хотя я не знаю, как реализовать их, поскольку я новичок в zsh, поэтому, возможно, вы можете помочь или предложить свои собственные:

    • Отключить завершение имени файла git, оставив только завершение ветки / тега / команды / имени / команды.
    • Замените «умное» заполнение имени файла обычным заполнением имени файла zsh.
    • Получите новый файл завершения _git, если он исправляет эти ошибки и переопределяет системный.

    Благодаря!

  • Переслать SSH-трафик через среднюю машину
  • Как я могу получить автозаполнение zsh для заполнения подстановочных знаков, таких как bash?
  • Создайте много tar-файлов из каталога с 500000 файлами
  • SSH для github с использованием CygWin не работает
  • Использование Git для управления библиотекой iTunes?
  • Можете ли вы указать git-shell в .ssh / authorized_keys для ограничения доступа только к git-командам через ssh?
  • 2 Solutions collect form web for “Тонкая настройка автозаполнения zsh git”

    Попробуйте перейти на последнюю версию Zsh. Я только что обновился с 4.3.4 до 4.3.10 и по крайней мере исправил проблему с псевдонимами Git, которые не выполняются.

    Вместо того, чтобы взломать мою установку, я добавил это в свой локальный .zshrc :

     customzsh=/usr/local/src/zsh-4.3.10/bin/zsh-4.3.10 if [ "$SHELL" != "$customzsh" ]; then export SHELL=$customzsh exec $customzsh fi 

    Для больших проектов даже новые сценарии завершения git слишком медленны. Чтобы отключить их и просто использовать обычное завершение файла, поместите следующую команду в свой .zshrc:

     compdef -d git 
    Давайте будем гением компьютера.