Conclusão para comandos git

17

Recentemente, mudei de usar uma caixa do Ubuntu nos últimos 7 anos para um Mac. Eu li outros posts como a mudança de Ubuntu para OS X e eu estou perdido e que é a diferença entre iTerm2 e Terminal?

Por que o iTerm2 e o Terminal não concluem os argumentos de um comando?

Por exemplo. Se eu fizer gi+ Tab, ele completará automaticamente essa palavra, o gitque é bom. Quando adiciono um espaço e tento remo+ Tab, por que não o concluo automaticamente remotecomo no Ubuntu. Eu tenho que digitar tudo manualmente após a palavra git. O mesmo para outros comandos.

Estou fazendo algo errado ou faltando alguma coisa?

(Observe que não estou falando do atalho cmd+ ;que preenche automaticamente entradas digitadas anteriormente no iTerm2.)

rgamber
fonte
11
O terminal e o iTerm2 não concluem o comando É o shell e seus complementos que podem ser os mesmos no Linux e no OSX; portanto, você precisa indicar qual é a sua configuração completa no Linux e duplicá-la no OSX.
user151019
Você deseja o preenchimento automático para o git - consulte apple.stackexchange.com/q/55875/24565 #
Michael Durrant

Respostas:

11

A maneira mais fácil de obter o preenchimento automático no OS X é mudar o seu shell para zsh.

Você pode testar as coisas executando o zshiTerm e o terminal antes de fazer a troca acima. Se você realmente deseja continuar, bashpode começar com estas duas perguntas:

bmike
fonte
3
Doce! zsh é bom! Nunca se preocupou em mudar do bash :). Update:Usar o zsh com oh-my-zsh é incrível.
Rogamber
ahhh love oh-my-zsh
Prefixo
13

Uma solução ao mudar do ubuntu é usar o homebrew, um gerenciador de pacotes para o Mac OSX . Em particular, gitvocê incluirá várias adições, incluindo a conclusão do bash. Isso será verdade para outros programas que são familiares aos desenvolvedores, como make.

Em 2 etapas:

  1. instalar com ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
  2. Corra brew doctorpara configurar seu caminho corretamente
  3. Instale a conclusão do git e do bash: brew install git bash-completion
  4. Adicione o comando return na etapa anterior no seu .bash_profile.
  5. Reinicie suas sessões do bash assim que as novas ferramentas e configurações forem gravadas no seu sistema de arquivos.

Mais sobre este howto .

meduz
fonte
3

Eu tenho duas sugestões:

  1. use peixe , é realmente simples e fácil

    uma. estendê-lo usando oh-meu-peixe

  2. zsh com oh-my-zsh. O zsh já está instalado para que você não precise fazer muito.

    uma. chsh -s /bin/zsh

    b. sair e entrar novamente

    c. execute isso para instalar o oh-my-zsh wget --no-check-certificate https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O - | shmais informações aqui: https://github.com/robbyrussell/oh-my-zsh

Eu uso, oh-my-zshmas fishé ótimo também.

ipinak
fonte
3

Isso evita um pouco o problema, caso alguém queira manter a versão do Git fornecida pela Apple em seu sistema.

Você pode criar aliases no arquivo .gitconfig em seu diretório pessoal para obter comandos git mais curtos. Por exemplo, eu tenho o git configurado para que seja git stexecutado git status.

Aliases de exemplo em .gitconfig:

[alias]
    co = checkout
    ci = commit
    st = status
    br = branch
Kevin Chen
fonte
2

Para aqueles que procuram uma solução de conclusão de comando para o bash que é tão fácil de usar quanto zsh + oh-my-zsh, agora existe o projeto bash-it . O que, em suas próprias palavras, é "uma imitação desavergonhada do oh-my-zsh" - nada realmente errado nisso!

Ele configura um plug-in como a arquitetura como o oh-my-zsh, onde você pode trazer coisas para dentro e fora do seu ambiente facilmente e obter coisas novas através da sincronização com o projeto do github.

Instalação em três etapas fáceis:

  1. Verifique um clone deste repositório: git clone https://github.com/revans/bash-it.git ~/.bash_it
  2. Executar ~/.bash_it/install.sh(ele faz backup automaticamente do seu ~/.bash_profile)
  3. Edite seu ~/.bash_profilearquivo para personalizar o bash-it.

Se você tem medo de mudar para zsh, bash-ité um bom meio termo que o mantém ligado, bashmas fornece muitos plugins poderosos para estender seu ambiente.

Ian C.
fonte