Windows的MSysGit与Git


105

我无法确定MSysGit和Windows的Git之间区别。它们有何不同?我为什么要选择一个?


15
+1,这实际上是一个比第一次出现时更难/更复杂/更重要的问题。

1
又见msysgit和Cygwin +混帐之间的不同:stackoverflow.com/questions/3144082/...
VonC

Answers:


79

他们不是同一回事吗?

关于:http : //msysgit.github.com/标题是Windows的Git,应用程序是msysgit。

即使不是这样,我希望唯一的区别在于编译方法(即使用的编译器和任何选项集)和任何无关的包装(例如在msysgit中具有bash仿真shell)。实际产品(Git本身)应保持大致相似。


编辑:感谢Jarrod指出这一点。我将以上内容留作后代。引用维基:

msysGit是用于Windows编译Git的开发环境。就您只需要安装msysGit而言,然后就可以构建Git而言,它是完整的。无需安装任何第三方软件。msysGit不是Windows的Git。这是一个安装程序,仅安装Git。

很容易看出区别:Git的安装程序带有前缀Git-,msysGit的安装程序带有前缀msysGit-。另一个故事是msysGit安装程序有两种版本:fullinstall和netinstall。此外,默认情况下,msysGit不会安装到C:\ Program Files。但是msysGit带有gcc,即GNU C编译器。

因此,两个项目之间的区别是

  • msysGitmsys+ mingw环境+在Windows上自己编译Git所需的一切。
  • Windows的Git就是这样:为Windows编译的Git。

8
我认为它们不是同一回事。如果您在发布的链接中单击链接,则在Wiki上会发现“ msysGit不是Windows的Git”
Jarrod

2
@贾罗德我认为你绝对正确,我已经更新了答案。

5
请原谅我的无知,但是为什么我要编译git?如果我只想在Windows上使用git进行源代码控制,是否需要msysGit?
Jarrod 2010年

3
@Jarrod对您问题的简短回答:不。在Windows上获取Git。

2
@Jarrod:如果您想使用最新版本的git,则希望自己进行编译,以便尽快获得所有令人兴奋的新功能!我在linux上执行此操作。
卡斯卡贝尔

16

(现在)它们是相同的(截至2015年5月,但可能更早一点):

“ msysgit”和“ Git for Windows”已合并为“ Git for Windows”。msysgit.github.io现在托管“ Git for Windows”,并且主要git下载站点git-scm.commsysgit.github.io列为Windows的维护版本。

从更新的Wiki

...我们决定逐步淘汰名称“ msysGit”(以及同名的GitHub org),并在Windows的Git上工作(与相应的GitHub org一起工作,并使用名称“ Windows的Git”)针对针对Windows开发人员的Git的开发环境,针对“最终用户”和“ Windows SDK的Git”的安装程序)。


当git-for-windows是msysgit的分支,而git-for-windows很难开发而msysgit不是,而git-for-windows使用Git 2.4时,它们又如何相同?
BlackEye 2015年

1
@黑色眼睛。听起来像是一段有趣的历史。我的回答只是指出,尽管这些项目已有历史,但它们现已合并(如项目Wiki中所述)。似乎这与许多人试图找出现在要使用的人有关。
Bryan P

4

这是摘录的“官方自述文件”

不需要安装Windows版Git的“便携式”版本(MSysGit)。它会从您放置在其上的任何目录运行,甚至会在USB拇指驱动器上运行。它将不会将永久条目写入Windows注册表。它不需要管理员特权即可“安装”。此版本不为您提供方便的右键单击上下文菜单项“此处的Git GUI”和“此处的Git Bash”,因为它们需要将条目添加到Windows注册表中。


我认为这对他们两个都适用。
BlackEye 2015年



2

下载页面上的标题刚刚更新,因此可以完全识别“ Git for Windows”版本。现在,既有“已安装”版本(带有右键菜单选项),又有可直接从记忆棒等运行的便携式版本。


2

据我了解,Windows上的Git是由以下四个项目要点组成的项目。

直接从https://github.com/msysgit/msysgit/wiki获取

Windows上的Git

为了使项目名称的乳白色“汤”更清晰,我们这样说:

  • msysGit-是该项目的名称,这是Windows版Git的构建环境,它会发布官方二进制文件

  • MinGW-是用于本机Microsoft Windows应用程序的简约开发环境。

  • MSYS-是Bourne Shell命令行解释器系统,由MinGW(及其他公司)使用,过去是从Cygwin 派生

  • Cygwin-一种类似于Linux的环境,过去曾用于构建Windows的Git,如今与msysGit无关


1
难道没有遗漏一个子弹:“ git for Windows”吗?Windows GIT用户平均安装使用GIT的安装量。 github.com/msysgit/git
汤姆

1

这是他们网站https://github.com/msysgit/msysgit上的更清晰的常规比较

Git for Windows is the software package that installs a minimal environment to run Git on Windows. It comes with a Bash (a Unix-type shell), with a Perl interpreter and with the Git executable and its dependencies.

On the other hand, msysGit is the software package installing the build environment that can build Git for Windows. The easiest way is to install it via the net installer.

1

Windows的Git可能就是您想要的。它包括以下主要功能:

Git BASH Windows的Git提供了BASH仿真,用于从命令行运行Git。* NIX用户应该有宾至如归的感觉,因为BASH仿真的行为就像在LINUX和UNIX环境中的“ git”命令一样。

Git GUI正如Windows用户通常期望的图形用户界面一样,Windows版Git还提供了Git GUI,它是Git BASH的强大替代品,提供了几乎所有Git命令行功能的图形版本以及全面的可视化差异工具。

Shell集成只需右键单击Windows资源管理器中的文件夹即可访问BASH或GUI。Git-Cheetah插件还提供类似于TortoiseSVN的界面,可直接在上下文菜单上显示Git功能。

可从同一页面单独下载以下内容...

msysGit是一个构建环境,其中包含所有想要通过为Windows编写Git代码来做出贡献的开发人员所必需的所有工具。


Git BASH为偶尔需要使用Windows机器的Linux专家提供了一个熟悉的环境-即使他们不需要git本身。它开始与BASH提示,并增加了核心的实用程序,如集合sshfindgrepviawk,当然git



到目前为止,您可能对Windows Linux子系统更感兴趣。
布伦特·布拉德本
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.