软件git,github for window,tortoisegit有什么区别

如题所述

第1个回答  2016-03-24
git有且只有一个,就是linus最初创建的那个叫做git的程序。

最初的git,只能运行在unix系统上,然后,有人为它做了windows兼容的修改,git for windows的具体维护工作应该是德国的一家公司的几个人在负责,没错,就是我们看到的那个msysgit,一个基于windows上虚拟unix环境mgw的git。早期还有一个单独的windows git的fork,现在已经不存在了。而msysgit本身,也是git官方维护的版本,它的release是跟着git主版本走的,但是因为有一些windows特有的修改不便merge到主干,所以,现在还是有少量单独的修改是由msysgit的维护小组在管理负责的。这种情况将来会不会有所改善我不好说,但从这几年的情况来说,msysgit的修改是在一点一点的合并到主干的,因此,也许将来我们看到msysgit,有可能就仅仅只是一个mgw + git的合并安装包而已了,但就现在来说,msysgit是跟着主干git走的一个官方fork。

无论github for windows,还是tortoisegit,他们的底下都是依赖msysgit的,tortoisegit为了提高性能,似乎在将内部实现从调用git的cmd命令转移到一个gitlib的dll上去,这个gitlib的dll的历史渊源我不是很清楚,但应该跟msysgit脱不了关系,但即使如此,tortoisegit现在仍然还是需要你安装msysgit才能正常动作的,因为它也还没有把所有的内部调用都替换掉,就现在来说,msysgit仍然是tortoisegit的基础。

至于github for windows,我没有用过,但从我看到过的资料来说,它其实是内置了一个msysgit的,你所有的操作,其实不过是github for windows的gui界面把你的操作翻译成命令行调用参数并调用git的命令行程序而已,就是那个msysgit里面的git.exe。

所以,git本身就是git,然后github for windows和tortoisegit都是git的一个gui包装。使用tortoisegit,你需要单独下载msysgit安装,使用github for windows,可以直接使用内置的msysgit而无须单独下载安装。
相似回答