Git, Powershell,% HOME% e vários repositórios

2

Vou começar dizendo que não sou particularmente bom nem com o git nem com o Windows. No entanto, eu tenho usado com sucesso msysgit no Windows 7 por um tempo agora, mantendo o controle de vários repositórios diferentes usando a GUI do Git.

Por algum motivo, porém, quando tento navegar para qualquer um dos diretórios que possuem meus repositórios e executar git status do PowerShell, recebo o seguinte erro:

fatal: Not a git repository (or any of the parent directories): .git

Não sei exatamente por que isso está acontecendo, pois posso cd para este diretório:

C:\Users\wilduck\Model\.git

No entanto, tenho certeza de que tem algo a ver com o fato de que minha variável de ambiente% HOME% está definida como C:\Users\wilduck\ . Meu pensamento que este é o problema é suportado pelo fato de que, se eu executar os seguintes comandos:

mkdir C:\Users\wilduck\stupidtest
cd C:\Users\wilduck\stupidtest
git init

Um repositório git é inicializado em C:\Users\wilduck , não no subdiretório stupidtest .

Então, meu problema é que, embora eu possa trabalhar em alguns repositórios diferentes usando a GUI do Git, não consigo acessar esses repositórios do PowerShell. Pensei em reinstalar o msysgit, pois não tenho certeza de qual opção eu escolhi para "Como você gostaria de executar o git a partir da linha de comando ", mas não tenho idéia se isso afetará minha capacidade de acessar meus repositórios existentes. Eu também pensei em mudar a minha variável de ambiente% HOME% cada vez que eu quero trabalhar em um repositório diferente, mas isso é tanto uma dor, e parafusos com as configurações de .gitconfig.

Minha pergunta básica pode ser facilmente escrita como Como obtenho o git, do PowerShell, para reconhecer meus repositórios existentes? No entanto, tenho várias perguntas relacionadas que eu adoraria ter alguma explicação:

  1. Por que isso funciona bem com o Git GUI, mas não com o powershell? Há alguma mágica acontecendo nos bastidores?
  2. Este é um artefato de como as variáveis de ambiente do Windows funcionam? Ou como o git lida com um diretório pessoal?
  3. Eu, a qualquer momento, estraguei algo terrivelmente?
por Wilduck 16.02.2012 / 18:34

1 resposta

0

Certifique-se de que $Env:GIT* estejam vazios ou removidos. O link explica o que cada um faz.

    
por 19.07.2013 / 08:00