Windows下的Git:MSYS还是Cygwin?

我计划将我的项目迁移到git,而我目前想知道哪个是Windows下最好和/或最稳定的选项。


从我收集到的信息来看,我基本上有2.5个选择:


MSYSgit

Cygwin下的git

(aka 2.5)来自Cygwin提示符的MSYSgit(假设已经安装了Cygwin git)。

注意:IMO Cygwin本身就是一个很大的优点,因为您可以访问几乎所有的* nix命令行工具,就像在使用MSYSgit bash的情况下,您只能访问这些工具的一小部分。


鉴于此,您会建议什么选择?


湖上湖
浏览 997回答 3
3回答

守候你守候我

是。老问题。新答案:在大型部署中,我们已经使用MSYSgit大约两年了。来自本地git存储库服务器的传输速度已限制为小于5 MiB / s。对该问题的早期调查表明,问题出在Windows XP和Windows 7上的MSYS开发人员,它们限制了命令提示符/ bash shell的连接。实际上,这似乎不是问题。我发现了Darrell Mozingo的博客文章,并仅使用Cygwin安装程序测试了一个大型(许多GiB)存储库的克隆。传输速度在30 MiB / s范围内。问题在于,MSYSgit使用了2007年以来的旧版OpenSSH二进制文件。为此,在解决此问题之前,我现在建议转换为Cygwin(即使git的版本稍晚一些)。我还发现Cygwin更稳定,并且perl用尽内存的可能性较小。

沧海一幻觉

我曾经尝试过同时使用MSYS和Cygwin版本的git,说实话,我发现两者的体验都不是很好。我只是不认为git真的已经为Windows准备好了。话虽如此,我发现MSYS版本的一个问题是它将(非二进制)文件上的行尾从UNIX样式(换行)转换为DOS样式(回车/换行)。您可能会认为这是一个错误或功能,但是无法更改我可以找到的行为。(编辑:将配置变量设置core.autocrlf为false。谢谢Brian。)OTOH,git的MSYS版本具有一些GUI功能,而cygwin版本不具备此功能,除非您要安装并运行整个X服务器。(感谢乔斯确认这一点。)我的印象是MSYS版本更受欢迎,尽管那可能是因为您不需要安装cygwin生态系统来使用它。(我同意,cygwin非常有用。)就个人而言,我会选择Bazaar或Mercurial,它们对Windows IMO的支持都更好。
打开App,查看更多内容
随时随地看视频慕课网APP