12

msysGit 附带一个 Explorer shell 扩展,显示Git Bash Here在文件夹的上下文菜单中,该文件夹在所选文件夹中打开 Bash 提示符。

如何使用 Zsh 而不是 Bash 作为此命令窗口的 shell?

4

4 回答 4

5

msysGit 提供的内置 Bash 构建在conhost.exe. 与 xterm(剪贴板、文本输入/输出、历史记录等)相比,这很糟糕。

我目前在 Windows 上使用的解决方法是使用最新的 msysGit + Cygwin mintty 和 Bash。这给了我一个不错的外壳,带有最新且快速的 Git。通过这种方法,您可以使用其他 shell,例如 Zsh。请注意,折衷包括 Git 无法使用您的 PAGER(我不得不将诸如git logto之类的东西命名为别名git log|less)。

于 2014-05-13T11:47:29.553 回答
2

MsysGit 不支持内置 Bash 以外的其他 shell。

你可以考虑使用Cygwin——如果你不能没有 Zsh(我理解你)——它还提供了一个git-package

不幸的是,这个包很旧(v1.7.9 是从 12 年 1 月开始的),这可能会导致与较新存储库的交互出现问题。

于 2014-05-13T11:19:44.203 回答
2

Babun是一种易于设置的变体。它基于 Cygwin,提供开箱即用的Zsh(包括Oh My Zsh )和 Git。

从技术上讲,它没有将 Zsh 与msysGit一起使用,因为 Babun 包含自己的 Git 版本。此外,Babun 占用的空间大约是 msysGit(包括 Git Bash)所需空间的两倍。但是,与 msysGit 相比,由于易于设置和进一步的使用可能性,它可能成为一个可行的替代方案。

更新: Babun 项目已停止。在 Windows 10 上,您可以改用WSL,并使用所选 Linux 发行版的包管理器安装所有请求的软件(如 Git 和 Zsh)。

于 2017-09-20T08:42:20.927 回答
0

你应该先安装 pacman。您可以安装 msys 然后将以下文件复制到 git for windows install dir。

./etc/pacman.conf
./etc/pacman.d/gnupg/.gpg-v21-migrated
./etc/pacman.d/gnupg/crls.d/DIR.txt
./etc/pacman.d/gnupg/gpg-agent.conf
./etc/pacman.d/gnupg/gpg.conf
./etc/pacman.d/gnupg/openpgp-revocs.d/95B7E06B8C47127F398481080BDA45A606729940.rev
./etc/pacman.d/gnupg/private-keys-v1.d/1124CC687F416E4D7C43EB618BECDD023E787046.key
./etc/pacman.d/gnupg/pubring.gpg
./etc/pacman.d/gnupg/pubring.gpg~
./etc/pacman.d/gnupg/secring.gpg
./etc/pacman.d/gnupg/tofu.db
./etc/pacman.d/gnupg/trustdb.gpg
./etc/pacman.d/mirrorlist.mingw32
./etc/pacman.d/mirrorlist.mingw64
./etc/pacman.d/mirrorlist.msys
./usr/bin/pacboy
./usr/bin/paccache
./usr/bin/pacdiff
./usr/bin/paclist
./usr/bin/paclog-pkglist
./usr/bin/pacman-conf.exe
./usr/bin/pacman-db-upgrade
./usr/bin/pacman-key
./usr/bin/pacman-rec-filename-grep
./usr/bin/pacman.exe
./usr/bin/pacscripts
./usr/bin/pacsearch
./usr/bin/pacsort.exe
./usr/bin/pactoys

pac我只是从 /usr/bin/ 目录复制所有二进制文件。现在你有了一个吃豆子。安装 zsh 使用pacman -S zsh命令。

请参阅https://medium.com/@borekb/zsh-via-msys2-on-windows-3964a943b1ce的教程

于 2019-09-29T12:44:39.560 回答