作为一名长期使用Visual SourceSafe的用户(也是仇恨者),我正在与一位同事讨论切换到SVN;他建议改用Git。因为,显然,它可以作为点对点使用,而无需中央服务器(我们是一个3开发团队)。

不过,我还没有找到任何关于将Git与Visual Studio集成的工具的信息——这样的东西存在吗?

在Visual Studio中使用Git有哪些技术?在我开始之前,我需要知道它们有什么不同?


当前回答

正如Jon Rimmer所言,您可以使用GitExtensions。GitExtensions可以在Visual Studio 2005和Visual Studio 2008中工作,如果您手动复制和配置.Addin文件,它也可以在Visual Studio2010中工作。

其他回答

我发现,与基于文件或遵循签出-编辑-提交模式的源代码管理工具相比,Git在整个树上工作时,从IDE集成中获益较少。当然,有些情况下,点击一个按钮进行历史检查会很好,但我并不十分怀念。

真正必须做的是让.gitignore文件充满不应该在共享存储库中的内容。矿山通常包含(除其他材料外)以下内容:

*.vcproj.*.user
*.ncb
*.aps
*.suo

但这严重偏向于C++,很少或根本没有使用任何类向导风格的功能。

我的使用模式如下所示。

Visual Studio中的代码,代码,代码。当高兴时(明智的中间点是提交代码),切换到Git,保存更改并查看差异。如果有任何明显错误,请切换回Visual Studio并修复,否则提交。

在Git中,任何合并、分支、重基或其他漂亮的SCM内容都可以从命令提示符轻松完成。VisualStudio通常对其下的内容变化相当满意,尽管如果您对项目文件进行了重大更改,它有时需要重新加载一些项目。

我发现Git的有用性超过了没有完全集成IDE带来的任何不便,但在某种程度上,这是一个品味问题。

Visual Studio 2013本机支持Git。

请参见官方公告。

2013年1月,微软宣布,他们将在所有ALM产品中添加完整的Git支持。他们为Visual Studio 2012发布了一个插件,添加了Git源代码管理集成。

另外,还有一个名为GitExtensions的项目,其中包括Visual Studio 2005、2008、2010和2012的插件,以及Windows资源管理器集成。它定期更新,并在几个项目中使用过,我发现它非常有用。

另一个选项是Git源代码控制提供程序。

从2013年2月11日起,Visual Studio 2012的Microsoft Git插件也应与Express版本兼容。

我使用Git和Visual Studio将协议缓冲区连接到C#。我不使用GUI——我只是像Visual Studio一样打开命令行。

在大多数情况下,这是好的-唯一的问题是当您想要重命名文件时。Git和Visual Studio都希望自己是重命名它的人。不过,我认为在Visual Studio中重命名它是一种方法——只是要小心之后在Git端的操作。虽然这在过去有点痛苦,但我听说它在Git端实际上应该是无缝的,因为它可以注意到内容基本相同。(通常不完全相同——在重命名类IME时,您倾向于重命名文件。)

但基本上-是的,它很好。我是一个Git新手,但我可以让它做我需要的一切。确保你有一个Git忽略文件,用于bin、obj和*.user。