Git versus Mercurial for .NET developers?

2019-08-17 01:40发布

我一直想知道什么是更好的DVCS的.NET开发人员? 从阅读各种信息它听起来像水银更好地工作在Windows,但其他信息声称的Git已经赶上和提供优质的Windows和Visual Studio工具超过水银。 有没有人有最近状态不错的信息或在.NET开发环境中试图既有经验?

Answer 1:

我一直在使用水银一年多了,现在做.NET开发,并已工作了巨大的。 我承认我不使用任何花哨的工具(Explorer加载项和Visual Studio工具),但它们可用(例如TortoiseHg)。 我发现,使用命令行工具一样简单-只需指定.hgignore几个通配符(如Blaenk的答案 ),你就大功告成了。

我不知道如何很好的git集成了汞,但对于反向siutation我使用HG-git的过去和它工作得很好。 由于汞的新版本出来然而还是有些不稳定。

所以,你应该能够使用github上的反复无常,以及原生善变回购总有(IMO)都好看bitbucket.org 。 编辑:也请注意, CodePlex上 ,这是专注于.NET开源项目,现在提供的Git和Mercurial库。

我要指出,“人气”是一个非常困难的标准,以立足于您的选择。 要么DVCS具有较高知名度的用户。 Git有Linux内核,当然,同时值得注意的汞用户包括Mozilla和Python项目。

编辑 :由于这似乎得到规则upvotes。 一切我上面写的是真实的写作时间,但我不再同意我的前自我到位桶是像你一样的GitHub。 GitHub上有更好的功能,并从我的角度来看(主要是F#的开源开发)其他人有没有让您获得更好的网络效应。 我前一阵子移动从CodePlex上/到位桶我所有的项目,GitHub上,并立即开始收到的捐款,而在CodePlex上/到位桶旁边,什么也没发生。



Answer 2:

我认为,鉴于的git的人气指数增长的git的窗户很好的支持( 类似于该颠覆的的东西,例如TortoiseSVN)必将到来,这只是一个时间问题。 这似乎是最流行的两个项目是msysgit ,并TortoiseGit (也使用msysgit),它类似于TortoiseSVN的。 git的不断变得越来越流行,如果你碰上现在是不可能出现任何问题,而且变得更加不太可能,因为在Windows上的Git工具变得进一步发展,你将能够找到修复容易得多,由于大用户群。

在此期间,我发现这个系列的指南是非常有帮助的。

你可能会遇到的问题可能会忽略某些文件,如果你查找如何使用这应该是很容易.gitignore ,这是非常简单的,这里是文件和通配符,该系列中提到的名单:

obj
bin
_ReSharper.*
*.csproj.user
*.resharper.user
*.resharper
*.suo
*.cache
*~
*.swp

此外,我所看到的关于行结尾的一些问题。 对于这一点,你会想看看这个问题 。



Answer 3:

在写这篇文章的时候,我用两个TortoiseGit和TortoiseHg在不同的项目,显性Java和.NET项目(为水银)。 我必须说,TortoiseHg处于领先地位,因为它是更稳定,功能齐全的两个。

有一个水银为Visual Studio 2008的插件 ,但我建议用TortoiseHg坚持,直到插件本身是稳定的。 不知道用git的整合,但有一些谈了VS插件这里 。



Answer 4:

尽管Git是用于UNIX / Linux用户自然拉伸,它已经越来越为Windows和.NET用户提供更好。 然而善变,可能是两者之间的更好的选择。 不像集中开发,那里有一个选择过多,也有极少数“真” DVCS工具,在那里。 据我所知,目前只有一个商用系统,塑料SCM和上述两个OSS工具。 我来自ClearCase的侧面,并与PVCS,P4等传统SCM工具的经验。 我绊倒在塑料,也许通过这个网站,并从我的评价,似乎从视觉的角度做的很好。 如果你更多的是窗口店就像你说的,它可能是塑料,善变,和git的顺序。 如果你更UNIX / Linux中的git可能是第一个合乎逻辑的选择。 希望这可以帮助!



Answer 5:

双方Git和水银会为.NET开发人员做精,但它是众所周知,水银具有更好的Windows支持。 另外,如果你考虑一个商业工具,你为什么不看看塑料SCM阅读下面的教程分布式开发在Windows? http://codicesoftware.blogspot.com/2010/03/distributed-development-for-windows.html立即更新塑料SCM有一个免费的社区版。



Answer 6:

我没有使用水银严重,但刚刚完成从Subversion转换到Git的为.NET开发。 我使用的分布是Git的扩展 ,它安装标准(MSYS)的Git,加上一个图形前端,一些Windows资源管理器整合,以及一个Visual Studio插件。 它还附带了良好的文档。 在资源管理器集成不提供对TortoiseSVN做的文件图标整齐的状态标志,只是增加了要领到右键菜单。 所有这些工具都工作正常。

我发现最大的问题是,Git的需要你理解的概念来取得好成绩。 Git的扩展的图形界面是在Git的设施刚刚薄壳,所以如果你挣扎,比方说,子模块,那么所有的由Git的扩展提供的工具将解决这个问题。 现在有大约Git的教程和视频的加载在线,虽然。

默认情况下的Windows构建Git的转换行结束的CRLF; 因为我们是完全的MS店,这是我们正确的行为。



Answer 7:

Git有一大优势,而使用VS,重命名检测,如果你想只使用命令行界面,在HG你,当你在VS将其重命名重命名这些文件,这将使生活更轻松,在Git会无缝地检测到您的重命名(它跟踪内容而不是文件),即使你做的文件中的某些变化,它会检测到重命名为好。



文章来源: Git versus Mercurial for .NET developers?