当我在gitbash中运行bower init时,会显示以下错误:
bower ENOINT Register需要一个交互式shell
其他错误详细信息:请注意,您可以手动强制执行 带有--config.interactive的交互式shell
答案 0 :(得分:4)
mintty.exe
Issue 802确实提供了一个很好的解释:
我已经通过
mintty.exe
跟踪了这个问题。在
bower/lib/config.js
文件(bower v 1.4.1的第34行)中,tty.isatty(1)
在mintty.exe
下返回false,但如果您运行cygwin.bat
({{ {1}}使用Windows终端。)这是查看终端的便捷方式:
bash --login -i
可能相关:mintty - issue #56 "Improve support for native console programs"。
对于那些寻找解决方案的问题绊脚石,这个问题的明显快速解决方法是简单地避免使用mintty。
这并不意味着您必须返回使用Windows终端进行bash,因为还有其他选择:
- 有关使用bash配置Console2的说明,请参阅Terminal Setup in Windows 7和/或Replacing default git bash console with Console2。
- 关闭菜单,工具栏和状态栏,
- 创建名为"
node -e "var tty=require('tty'); console.log('tty.isatty(1):' + tty.isatty(1))"
"的快捷方式或者"Cygwin
",将快捷方式图标更改为Bash
,您可能永远不会知道其中的差异。P.S。如果您曾经注意到
C:\cygwin64\Cygwin-Terminal.ico
的其他问题,例如msysgit没有正确提示密码或节点repl无法正常工作,那么这可能是同样的问题。
- 从运行命令
执行此操作
mintty.exe
然后
cmd.exe /C "C:\Program Files\Git\bin\bash.exe" --login -i
将起作用,你可以用minw64,mintty或git-bash做任何事情。
OR
如果您正在使用Windows使用CMD运行bower init
OR
如果你正在使用git bash,请按照以下步骤操作:
- 卸载现有的GIT bash
- 重新安装GIT bash
- 安装期间设置:
- 3a:选择>从Windows命令提示符使用Git
- 3b:选择> Checkout Windows风格,提交Unix风格的行结尾
- 3c:选择>使用Windows'默认控制台窗口
答案 1 :(得分:1)
通过另一个终端运行该命令,例如Node.js
命令提示符,Windows cmd
本身或其他命令提示符。
答案 2 :(得分:1)
你真的不必卸载/重新安装,你可以使用Win CMD。 你打电话给init然后切换回MinW64。 编辑找到了修复...像这样开始git-bash 使用run命令,可以稍后更改快捷方式
cmd.exe /C "C:\Program Files\Git\bin\bash.exe" --login -i