我有一台安装了git
的windows机器。在安装时,我检查了add the gitbash to environment
,但是安装后,当我在windows cmd中运行像ls
这样的smiple命令时,就会得到错误。
'ls' is not recognized as an internal or external command,
operable program or batch file.
这是我窗口上的env变量
第二个是在安装时由git自动添加的,但我通过搜索堆栈溢出来添加第一个,但它们似乎都不起作用。
附加详细信息:
以防你想知道这会给我带来什么麻烦。我正在运行一些make
命令,这些命令在我的gitbash
上正常工作,但是在我的goland终端上会出现以下错误
./scripts/fmt.sh provider
process_begin: CreateProcess(NULL, sh C:\Users\farsh\go\src\gojeh\scripts\fmt.sh provider, ...) failed.
make (e=2): The system cannot find the file specified.
make: *** [Makefile:16: run] Error 2
发布于 2021-09-19 14:22:05
TL;DR
Git for Windows故意只在Windows路径上设置最小值
详细信息
如果您查看git\bin
目录,您将看到只有git
、bash
和sh
。然后有一个git\usr\bin
目录将是您所期望的标准*nix风格的实用程序,包括ls
,尽管在我的机器上没有包括make
。这些内容不会添加到Windows路径中,因为它们中的许多都会与标准的Windows实用程序发生冲突,而隐藏它们可能会对Windows中运行的其他东西产生不可预测的影响。
所以你会发现额外的东西只有当你在Git Bash中运行时才是可见的,在Git Bash本身中,它们被期望以*nix的方式工作。
如果您的系统需要make
,您可能应该安装一个要在Windows上使用的版本。
https://stackoverflow.com/questions/69240491
复制相似问题