【问题标题】:git add interactive hangs in cygwin, not in cmd promptgit add interactive 在 cygwin 中挂起,而不是在 cmd 提示符中
【发布时间】:2017-07-24 18:15:06
【问题描述】:

我会直接将此报告给负责的项目,但很难知道哪个项目将负责(Cygwin、Git 或用于 Windows 的 Git,它创建了我正在使用的 git.exe。这不是 Cygwin git,它是 Git对于 Windows。)

使用 Windows 命令提示符,git add -i [filename] 按预期工作。在显示提示之前有一个轻微的挂起,但没什么好担心的。

使用 Cygwin (64),相同的命令会无限期挂起。经过调查,我确定它启动了 perl.exe 的副本,然后它会耗尽 CPU 但似乎没有返回。

这是另一个 Git/Cygwin/Perl 问题,但遗憾的是没有直接解决我的问题:cygwin cannot exec 'git-add--interactive' permission denied

【问题讨论】:

  • 你使用 mintty 的命令控制台作为终端吗?
  • by cygwin,你的意思是独立于 git for windows 安装的环境吗?还是那个的一部分?
  • 当我说“使用 Cygwin (64)”时,我的意思是使用 Cygwin 终端,它看起来是基于 mintty 的。不明白你的第二个问题。
  • 看起来薄荷制造商对此提出了警告,实际上:“虽然具有简单文本输出的本地控制台程序通常可以正常工作,但交互式程序通常会出现问题,”mintty.github.io
  • 在 git-for-windows Google Group 中,建议完全避免使用 Cygwin 的 Git for Windows,所以我想我有我的答案:groups.google.com/forum/#!searchin/git-for-windows/…

标签: git cygwin git-for-windows


【解决方案1】:

正如我在“Why is it that if you download Git 2.0 from the net, you always get a 1.9.4 installer package?”中解释的那样,你应该不再需要cygwin,你可以直接使用git bash,基于msys2。

如果您必须使用 Cygwin,请确保您的 PATH 仅引用 Cygwin,而不是 Git for Windows,否则后者可能会干扰前者。

【讨论】:

  • 是的,我只是喜欢 Cygwin,并想开始在那里做所有事情。但是我的公司需要适用于 Windows 的 Git,这既是出于安全原因,也是因为它是唯一集成到我们的 Heroku 版本中的东西。我不确定你的最后一部分是什么意思,因为重点是调用 Git for Windows 并让它工作。
  • @Stephen 您在 Cygwin 中所做的一切都可以在 git bash 中完成。它带有 200 多个 Linux 命令。
  • 谢谢,我会试一试。那些命令是凭借 MSYS2 的吧?
  • @Stephen 是的,在<git>\mingw64\bin 中为 Windows 重新编译了 200 多个 Linux,路径见stackoverflow.com/a/35619745/6309
猜你喜欢
  • 1970-01-01
  • 2015-09-22
  • 2012-03-06
  • 1970-01-01
  • 2011-03-17
  • 1970-01-01
  • 1970-01-01
  • 2012-11-11
  • 1970-01-01
相关资源
最近更新 更多