Как решить "Не удается найти мерзавца в вашей PATH" на Flutter?
Я только что попытался установить Flutter на Linux, и когда я пытаюсь запустить команду flutter (flutter doctor), я получаю
Error: Unable to find git in your PATH.
Кто-нибудь знает, как это решить?
24 ответа
Вот мое решение для 64-битной Windows 11, флаттер 3.7.3, установленное через шоколад. Это просто связано с принудительными настройками безопасности git, которые могут обнаруживать сомнительное право собственности на флаттер-репозиторий. Просто добавьте базовый каталог флаттера в список исключений каталога git:
git config --global --add safe.directory C:/tools/flutter-base-dir
или измените владельца базового каталога флаттера, исправив небезопасный репозиторий git
Если перечисленные решения вам не подходят, попробуйте это
git config --global --add safe.directory '*'
Это единственное решение, которое у меня работает github.com/flutter/flutter/issues/123995
Добавлять
C:\Program Files\Git\bin\git.exe;C:\Program Files\Git\cmd;C:\Windows\System32
к вашей переменной PATH
Не создавайте новую переменную для git, а добавляйте их, как я делал один за другим, разделяя их;
Установите его, используя следующую команду.
sudo apt-get install git
У меня была такая же проблема в Windows 10. Я пробовал все, но запуск cmd от имени администратора решил мою проблему. Это может быть полезно для других.
Просто добавь C:\Windows\System32
в системную переменную PATH. оно работает
У меня тоже была такая же проблема, потому что в моей системе не был установлен git. Итак, я загрузил git с https://git-scm.com/downloads и установил его, и сразу после установки он заработал.
Если ничего из вышеперечисленного не помогает, это может быть возможным решением. Обратите внимание: это для Windows.
Мне казалось, что ничего не работает, поэтому я начал откапывать пакетные файлы flutter. Ошибка находится в %FLUTTER_ROOT%\bin\internal\shared.bat. Вот как выглядит эта строка кода:
REM Check that git exists and get the revision
SET git_exists=false
2>NUL (
PUSHD "%flutter_root%"
FOR /f %%r IN ('git rev-parse HEAD') DO (
SET git_exists=true
SET revision=%%r
)
POPD
)
REM If git didn't execute we don't have git. Exit without /B to avoid retrying.
if %git_exists% == false echo Error: Unable to find git in your PATH. && EXIT 1
Эта строка «2>NUL (« сообщает пакетному файлу Windows не отображать внутренние ошибки. Вы можете закомментировать ее следующим образом: (не забудьте закрывающую скобку)
REM 2>NUL (
PUSHD "%flutter_root%"
FOR /f %%r IN ('git rev-parse HEAD') DO (
SET git_exists=true
SET revision=%%r
)
POPD
REM )
После сохранения этого и повторного запуска команды flutter я получил эту ошибку: «Неустранимая: не репозиторий Git». Это не имело никакого смысла, поскольку у него был каталог .git и запуск «git rev-parse HEAD» в корне работал нормально.
Причина, по которой это происходит, может заключаться в том, что терминал на самом деле не указывает на текущую папку, а вместо этого указывает на что-то совершенно другое. Для меня это было «C:\Windows». Я разобрался с этой частью, установив git_exists=true, после этого флаттер установился без проблем. Когда я попытался запустить свой проект flutter, я получил ошибку: в моем корне нет файла pubspec.yaml, хотя он и был. Итак, я попытался протестировать это, создав еще один проект флаттера, но затем получил ошибку, что флаттер не может создать проект в «C:\Windows».
Итак, чтобы это исправить, мне пришлось сделать следующее:
- Перейдите в редактор реестра. Вы можете найти его в поиске Windows или нажав «Клавиша Windows» + R. Введите «regedit», и он откроется.
- После этого перейдите в «Компьютер\HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor», найдите ключ автозапуска и удалите его.
- Если ключ автозапуска отсутствует, он может находиться в «HKEY_CURRENT_USER» вместо «HKEY_LOCAL_MACHINE».
Действительно странная ошибка, но из-за нее флаттер иногда просматривал папку, указанную в этом ключе, а не текущую папку.
после добавления пути: C: \ src \ flutter \ bin C: \ Windows \ System32 C: \ Windows \ System32 \ WindowsPowerShell \ v1.0 C: \ Program Files \ Git \ bin \ git.exe C: \ Program Files \ Git \ cmd попробуйте использовать windows powershell (admin), это работает для меня
Вы можете загрузить 64-битный Git для установки Windows https://git-scm.com/download/win
Установите Git и выполните приведенную ниже команду git config --global --add Safe.directory C:/tools/flutter-base-dir
ДЛЯ WINDOWS: если вы выбрали код Visual Studio во время установки git и имеете несколько учетных записей пользователей в Windows, тогда все, что вам нужно сделать, это удалить git и переустановить git, выбрав vim в качестве редактора по умолчанию, а не код Visual Studio. Вы также получаете предупреждение при выборе кода Visual Studio во время установки git. Обратите на это внимание. Для меня проблемой была установка кода Visual Studio по умолчанию и наличие нескольких учетных записей пользователей.
Я попробовал еще несколько шагов, но не получилось, но наконец добился успеха. Вам нужно перейти к «переменным среды» , затем в «Системных переменных» создать новое имя переменной «git» и установить значение переменной «C:\Program Files\Git\bin» . Тогда хорошо. Закройте vscode или весь cmd-файл. Затем снова откройте и попробуйте Flutter Doctor, у вас обязательно получится.
У меня все было настроено правильно, но я все еще сталкивался с ошибкой. Мне нужно было только снова открыть Android Studio в качестве администратора. Надеюсь, это сработает для всех.
в Windows 10C:\src\flutter\binC:\Windows\System32C:\Windows\System32\WindowsPowerShell\v1.0C:\Program Files\Git\bin\git.exeC:\Program Files\Git\cmd
Я попробовал другое исправление, которое изменило flutter.bat, но оно мне не помогло. Найдите свой общий.bat и вручную установите для git_exists значение true.
C:\tools\flutter\bin\internal\shared.bat
SET git_exists=true
2>NUL (
PUSHD "%flutter_root%"
FOR /f %%r IN ('git rev-parse HEAD') DO (
SET git_exists=true
SET revision=%%r
)
POPD
)
Вы можете установить для переменной значение true или добавить SET git_exists=true после блока.
Перепробовав все, и ничего не помогло, я снова открываю Android Studio от имени администратора, и все сработало...
Я надеюсь, что это сработает для всех
Попробуйте запустить, например
В моем случае это была ошибка в глобальной конфигурации git. После исправления все работает нормально и я могу бегать
[ПРЕДПОЛАГАЯ, что GIT УСТАНОВЛЕН ПРАВИЛЬНО] Я задокументировал ошибку на странице " https://github.com/flutter/flutter/issues/39785 ", это простое изменение командного файла.
если это все еще не сработало даже после применения вышеуказанных переменных среды, просто запустите Android Studio от имени администратора.
Попробуйте установить git отсюда в соответствии с вашим дистрибутивом Linux https://git-scm.com/download/linux
просто сделайте свой путь таким, он работает
C:\Windows\System32;C:\Users\HP\flutter\bin
C:\ SRC \flutter\bin;C:\Windows\System32
просто добавь этот путь поверь мне