Git在Windows上有哪些局限性?

时间:2010-07-22 21:14:20

标签: git version-control msysgit

我读到Mercurial和Git的所有地方他们通常会抛出一两行,这意味着Git在Windows上的能力有限(因为有些Shell程序无法移植等等)但是我从来没有遇到某些明确的页面提到他们。而且大多数页面都有点旧。

Git在Windows上的功能有哪些限制?是否必须在Windows上运行Git on MinGW和MSYS有性能限制?

3 个答案:

答案 0 :(得分:27)

答案 1 :(得分:8)

  • 可疑的通配符支持:
    .gitignore文件有问题)
    发送到底层操作系统特定的fnname()方法:请参阅this questionthat one(或that one

  • git-svn可能不会很快 资料来源:SO answer。尽管如此,它取得了一些进展。

  • 需要调整PATH以防止任何冲突 Windows和bash之间的某些命令是相同的。 (findcprm,...) 见SO answer 作为cjrh条评论,Git for Windows默认情况下不会将bin目录添加到PATH

  • 可以进行一些EOL转换(Unix与Windows EOL) 见Definitive recommendation for git autocrlf settings
    msysgit中尚未提供新的和改进的core.eoleol属性from Git1.7.2

答案 2 :(得分:3)

(这可能更多的是评论而不是答案,但我的代表还不是那么。)

我最近想知道同样的事情,我也无法挖掘太多。 Here's one interesting discussion(通过citation on Git's wikipedia entry发现)。

据我所知,主要问题是性能(特别是在Cygwin和/或大型存储库上)和文件系统问题(文件名不区分大小写,VFS有限)。

纯粹主观/轶事:

我觉得Git在Ubuntu 10.04下本地运行比在同一台机器上Win7下的Cygwin更令人愉快的体验 - 以至于我几乎把所有自由网络开发工作都转移到了Ubuntu上它的优点(除其他外)。我在工作中学习了我的OSX机器上的Git,所以尝试在Windows上使用它几乎是痛苦的。 msysgit绝对是对Cygwin的改进,但它仍然受到Windows文件系统的限制。

编辑:显然是msysgit chokes on filenames that were entered into git via a UTF8-aware filesystem, like Linux,这很糟糕。

我也偶然发现GitSharp, a WIP native Windows implementation(通过this blog comment发现)。