据我所知,Git 似乎严重依赖 POSIX 特定的功能,导致 Windows 上出现兼容性问题。但是,我并不具体了解 Git 使用的哪些 POSIX 功能无法在 Windows 上轻易复制。
由于这个问题,我一直很犹豫是否要在我的 Windows 计算机上开始使用 Git。 Git 使用了哪些 POSIX 特性,这仍然是一个问题吗?像 msysGit 这样的项目是如何设法规避这些问题的?
最佳答案
是的,Git 确实依赖于 POSIX 系统,但请注意 POSIX specifies a lot of things :shell 环境(即命令行环境)、操作系统接口(interface)(即实现文件 I/O、线程等的库)、正则表达式、目录结构(即/dev/null、/tmp)和实用程序。
考虑到我对 POSIX 的定义,应该可以看出 Git 几乎依赖于所有 POSIX。但是,如果您阅读 Git 开发人员的 CodingGuidelines ,您会看到 Git 使用 POSIX 作为实现广泛可移植性的方法。
msysGit 解决了兼容性问题,因为它是一个 POSIX 环境。
在 Windows 上运行 Git 通常意味着在 POSIX 运行时环境之上运行。这是Git for Windows的基础.您首先启动 Git BASH,然后在该环境中运行 Git 命令。
我可以向您保证,Git 以这种方式工作得很好!
如果 POSIX 和命令行让您犹豫不决,您可能想要探索 Git UI,例如 Atlassian SourceTree或 GitHub for Windows .
关于windows - Git 对 POSIX 功能的依赖在 Windows 上仍然是一个问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22166612/