3

Я установил git внутри WSL, и когда я вызываю программу, она показывает одно сообщение об ошибке:

перевод: не является действительным приложением Win32

Мое намерение состоит в том, чтобы заменить понемногу такие инструменты, как cygwin, Git для Windows и другие, инструментами, установленными внутри WSL.

перевод: невозможно / невозможно выполнить двоичный файл

2 ответа2

6

Вы не должны получать доступ к файлам и утилитам Linux непосредственно из приложений Windows. Так что давать путь напрямую - не очень хорошая вещь.

Вы должны называть его как bash -c "git" , или, если необходимо, поместить вызов в пакетный файл, чтобы приложение Windows вызывало этот файл вместо приложения Linux.

Вам также нужно перевести путь между Windows и Linux, потому что git в WSL не будет понимать такие вещи, как D:\my project\src. Ранее преобразование должно было выполняться вручную, однако для этой цели MS включила wslpath начиная с Windows 10 1803.

Вы также можете установить дополнение, чтобы сделать весь перевод и тяжелую работу за вас. В VSCode есть wslgit, а в JetBrains есть WSL Support Framework. Я не уверен насчет Android Studio, но этот ответ предполагает, что можно использовать gitwrap

Читать дальше Взаимодействие между Windows и Bash

1

Я не смог заставить его работать от IntelliJ. Даже с оболочкой тест в IntelliJ продолжал жаловаться. Вы можете следовать этому руководству, чтобы запустить IntelliJ из WSL: https://gist.github.com/wsargent/072319c2100ac0aea4305d6f6eeacc08

Сам не пробовал, но ходят слухи, что он отстает.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .