Como acessar as opções de comando no Magit

17

A maioria dos magitcomandos é chamada com uma única tecla, que exibe um menu de subcomandos e comutadores. Por exemplo, Pmostra Pe tcomo subcomandos e -fe -ucomo "opções".

Bater nas letras dos subcomandos os chama, mas como se chama os comutadores? Eu tenho um repositório com dois controles remotos e queria enviar para o outro controle remoto. O -ucomutador se parece exatamente com a coisa, mas se eu digitar P -u, -ufica vermelho, mas o Magit não solicita o controle remoto.

O manual não diz nada sobre essas opções para nenhum dos comandos, tanto quanto eu posso dizer.

Alguém poderia explicar como essas opções são usadas em geral. Não estou preocupado apenas com essa opção em particular, mas com as instalações em geral.

ddoherty
fonte
4
Para enviar para um controle remoto, adicione um argumento de prefixo antes de pressionar P P.
Tu Do
enquanto pressionar a ?tecla de dentro do Magit é útil para mostrar o menu, algumas teclas ainda não estão lá. Por exemplo, tente l hreflog. Então, eu concordo que você ainda precisa de um menu / ajuda mais extenso.
doctorado

Respostas:

13

A maneira como você está ativando os comutadores está correta, como evidenciado pelo fato de que eles "ficam vermelhos" quando você pressiona, -seguido por uma letra.

No seu caso, -usimplesmente não é a opção que você deseja. De man git-push:

-u, --set-upstream

Para cada ramificação atualizada ou enviada com êxito, adicione uma referência upstream (rastreamento), usada por git-pullcomandos sem argumento (1) e outros. Para mais informações, consulte branch.<name>.merge em git-config(1).

Então, quando você pressionar com o -ucomutador ativado, verá algo assim no *magit-process*buffer:

0 git --no-pager -c core.preloadindex=true push -v origin foo:refs/heads/foo -u

Empurrando para https://example.com/project.git

Contando objetos: 15, pronto. [...]

Filial foo configurada para rastrear filial remota foo desde a origem. [...]

Isso indica que o Magit de fato considerou a -uopção.


Como o @TuDo aponta, para que o Magit solicite um controle remoto, você precisa pressionar C-u P P.


Switches e Args

Em geral, ao lidar com os menus fornecidos pelo Magit para diferentes comandos, é útil lembrar que os switches são exatamente isso: switches . Você pode ativá-los e desativá-los, e é isso. Eles não exigem que você forneça informações adicionais; portanto, o Magit não solicitará nada quando você as ativar.

Args, por outro lado, exigem informações adicionais; portanto, quando você diz ao Magit que deseja executar um comando com um argumento específico, ele será solicitado. Os argumentos também diferem dos comutadores, pois são ativados pressionando =seguido por uma letra.

itsjeyd
fonte