Restaurando o atalho do Windows Github Powershell

0

Eu tenho o Github para Windows instalado (Win7 x64). Ele também veio com um atalho prático que permitia o lançamento de uma instância Powershell otimizada pelo Git (que também exibia informações como o status do arquivo git no prompt quando em uma pasta controlada).

Eu deletei esse atalho há algum tempo e agora estou tentando restaurá-lo. Eu encontrei o script que estava sendo executado (shell.ps1 na pasta app), mas tentar executá-lo produz vários erros bastante feios, como:

Set-Alias : The AllScope option cannot be removed from the alias 'cat'.
At C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1:11 char:10
+ set-alias <<<<  cat        get-content
    + CategoryInfo          : WriteError: (cat:String) [Set-Alias], SessionStateUnauthorizedAccessException
    + FullyQualifiedErrorId : AliasAllScopeOptionCannotBeRemoved,Microsoft.PowerShell.Commands.SetAliasCommand

Posso simplesmente usar uma alternativa (como o shell msys), mas estou realmente curioso para saber por que a versão do PowerShell não está funcionando.

    
por Andrei Bârsan 17.03.2013 / 21:57

3 respostas

0

Bem, eu consegui hackear uma solução, carregando manualmente meu posh-git no meu perfil (o comando Import-Module $env:posh_git não estava funcionando e estava lançando um erro desagradável sobre o $ env: posh_git não sendo um módulo):

. (Resolve-Path "$env:LOCALAPPDATA\GitHub\shell.ps1")
. (Resolve-Path "$env:LOCALAPPDATA\GitHub\PoshGit_e0fc5e56ff55708a890f408f03656f758fa0ba8a\profile.example.ps1")

... e comentando todos os aliases padrão no meu arquivo de perfil padrão localizado em ( C:\Windows\System32\WindowsPowerShell\v1.0 ). Funcionou sem esta última mudança também, mas Poweshell continuou mostrando uma tonelada de erros ao iniciar. Por incrível que pareça, aliases como cat e ls ainda funcionam.

    
por 05.04.2013 / 19:02
1

Erro ao sugerir colisão entre o seu perfil e o shell.ps1. Este em particular provavelmente é porque você tem cat alias definido em seu perfil e está tentando sobrescrever o em shell.ps1

Eu seguiria a sugestão desse script:

Generally you would run this from your Powershell Profile like this:

. (Resolve-Path "$env:LOCALAPPDATA\GitHub\shell.ps1")

De qualquer forma: o coração disso não é este script, é o módulo que vem com ele, portanto, adicione mais uma linha ao seu perfil:

Import-Module $env:posh_git

Essa é a parte que lida com o prompt e outros elementos.

Se você quiser evitar o uso do perfil, use a opção -noprofile em powershell.exe .

    
por 18.03.2013 / 00:10
1

Veja as respostas para link ; o seguinte comando funcionou para mim:

%LocalAppData%\GitHub\GitHub.appref-ms --reinstall-shortcuts
    
por 13.02.2014 / 22:09