находясь в WSL bash, можно ли вызвать gitk окна в текущем каталоге?

находясь в WSL bash, можно ли вызвать gitk окна в текущем каталоге?

Предположим, вы работаете в WSL cli bash и хотите использовать gitkWindows в текущем рабочем каталоге. Можно ли это сделать?

С уважением,

решение1

Если у вас естьGit для WindowsПосле установки вы сможете вызывать gitk gitk.exeнапрямую из командной строки WSL без необходимости установки какого-либо дополнительного программного обеспечения.

Единственное предостережение в том, что версия gitk для Windows не понимает пути WSL, только пути Windows. Это означает, что вы можете вызывать толькоgitk.exe из вашего репозитория. Другими словами, если /mnt/c/Users/arvil/working/my-repoэто репозиторий Git, то работает следующее:

$ cd /mnt/c/Users/arvil/working/my-repo && gitk.exe
$ cd /mnt/c/Users/arvil/working/my-repo/src && gitk.exe

Но вызов его извне не приведет к:

$ gitk.exe /mnt/c/Users/arvil/working/my-repo
$ cd /mnt/c/Users/arvil/another-repo && gitk.exe ../my-repo
$ cd /mnt/c/Users/arvil/working && gitk.exe my-repo  # even this fails!

По сути, если вам нужно передать путь в gitk, это не сработает.

решение2

Я пришел сюда, потому что хотел сделать то же самое. Хотя, после того как я наконец успешно запустил бинарный файл gitk, он, очевидно, не смог найти исходный код, поскольку бинарный файл Windows не знает расположения файлов в формате WSL. То есть мои файлы в WSL находятся в /mnt/c/git/foobar.

Вы, вероятно, можете сделать несколько символических ссылок или применить другие хитрые трюки, чтобы сделать структуру каталогов такой же, но вместо этого я пошел другим путем; установил X-сервер на Windows и установил версию gitk elf-64. Есть несколько вариантов, но вот моя рабочая конфигурация:

  • установка VcXsrv изhttps://sourceforge.net/projects/vcxsrv/
    • во время установки я выбрал установку X-сервера на 0
  • запустите XLaunch из меню «Пуск» Windows
  • из Ubuntu на WSL,
    • sudo apt install gitk
    • echo export DISPLAY=:0 >> ~/.bashrc && source ~/.bashrc
    • cd /mnt/c/git/foobar && gitk --all

решение3

Если у вас Windows 11, все, что вам нужно сделать, это запустить:

sudo apt update
sudo apt install gitk

Работает без лишних усилий или установки X-сервера.

Связанный контент