Я собираюсь начать с того, что я не очень хорош ни в git, ни в Windows. Тем не менее, я уже некоторое время успешно использую msysgit в Windows 7, отслеживая множество различных репозиториев с помощью графического интерфейса Git.
По какой-то причине, однако, когда я пытаюсь перейти к любому из каталогов, в которых есть мои репозитории, и запустить git status
из PowerShell, я получаю следующую ошибку:
fatal: Not a git repository (or any of the parent directories): .git
Я точно не знаю , почему это происходит, как я могу cd
в этом каталоге:
C:\Users\wilduck\Model\.git
Тем не менее, я почти уверен, что это как-то связано с тем, что моя переменная окружения% HOME% установлена в C:\Users\wilduck\
. Моя мысль, что это проблема, подтверждается тем фактом, что если я выполняю следующие команды:
mkdir C:\Users\wilduck\stupidtest
cd C:\Users\wilduck\stupidtest
git init
Git-репозиторий инициализируется в C:\Users\wilduck
, а не в самом stupidtest
подкаталоге.
Итак, моя проблема в том, что, хотя я могу работать в нескольких разных репозиториях с помощью графического интерфейса Git, я не могу получить доступ к этим репозиториям из PowerShell. Я думал о переустановке msysgit, так как я не уверен, какой вариант я выбрал для "Как вы хотите запускать git из командной строки", но я понятия не имею, повлияет ли это на мою способность добраться до моего существующие репозитории. Я также думал об изменении моей переменной среды% HOME% каждый раз, когда я хочу работать в другом репозитории, но это и боль, и винтики с настройками .gitconfig.
Мой основной вопрос может быть легко написан как Как получить git от PowerShell, чтобы распознать мои существующие репозитории? Тем не менее, у меня есть ряд связанных вопросов, которые я хотел бы получить от некоторых объяснений:
- Почему это работает с Git GUI, но не с powershell? За кулисами происходит какая-то магия?
- Является ли это артефактом работы переменных среды Windows? Или как git обрабатывает домашний каталог?
- Я что, в какой-то момент испортил что-то ужасно?