English 中文(简体)
Source control in Visual Studio 2010?
原标题:

After doing some search on SO, Google and MSDN forums I ve become frustrated that there is so little information for what might seem like an obvious question and possibly a dumb question.

I need to use source control in Visual Studio 2010 Professional. I do not have separate Team Foundation Server 2010. Some people have mentioned SourceSafe? I haven t seen any SourceSafe inside of the Visual Studio 2010 to be honest.

What are some alternatives (preferably free) for source control in Visual Studio 2010? Or is it already integrated in Visual Studio 2010 that I am so blind to have missed that?

Update #1: Thank you everyone, I will go with SVN, in particular AnkhSVN for Visual Studio 2010.

Update 3/23/2011: It s been almost a year since I have asked this question. I highly recommend using either Mercurial or Git over Subversion. So for those of you who are looking for Visual Studio 2010 version control system, look no further than Git or Mercurial extensions from the Visual Studio Extension Library.

Update 5/16/2013: I would now strongly encourage you to use Git over Mercurial, TFS or SVN. Take a look at CodeSchool s Try GitHub in the browser to see how awesome it is!

enter image description here

最佳回答

See: List of Source Control Systems with Visual Studio Plugins


Visual Studio is just an IDE. You can use any source control solution that you want with it. Any open source source control solution in particular, like git, mercurial (hg) or subversion (svn). And there are commercial products like Perforce or SourceGear Vault. See here for a pretty exhaustive list and google for more information.

You can find Visual Studio plugins that integrate it with any source control. Of open source ones subversion is especially rich in this regard. Commercial ones usually come with this integration.

And if you are not using source control that requires you to explicitly check-out files to edit them (like VSS or TFS do), the IDE integration is not even essential. I personally prefer to use git or subversion from outside the IDE.


And please, stay as far from Visual SourceSafe as you can.

问题回答

I am using Ankh SVN together with Subversion on the server side and it works fine for me. Mercurial and Git are more popular than SVN lately though and there is also Visual HG, a Mercurial plugin for visual Studio.

Edit: Meanwhile I switched to Mercurial (Tortoise HG plus Visual HG) and never looked back. It takes a few hours of getting used to Mercurial if you are coming from Subversion, but after that it really is a breeze. Even if you do not need a distributed CVS, Mercurial still has lots of nice features that are not available in Tortoise SVN. Plus, it does seem quite a bit more stable, especially with regards to branching.

Let me add one more option to the list of SCMs integrated with Visual Studio 2010: Plastic SCM. You can check how it looks like here.

There s a Community Edition available.

As @Tomek suggested use Subversion.

Check out this post, which will help you to use subversion and AnkhSVN(VS plugin) with VS2010

Visual Studio 2010, subversion with AnkhSVN

I have use Subversion and Mecurial on projects and both made me recall fondly working with the much hated (for good reason) Visual Source Safe. Both will "work", but both show their unix-programmer roots (no pun intended) with cryptic error messages and goofy, black magic nerdisms. Source control should be simple, reliable and stay out the way. Neither SNV nor Mecurial qualify. Mecurial is easier to use if nothing goes wrong -- which is about 80% of the time.

If you are a single developer working alone, I would use Mercurial.

Here is a sample of why I hate these:

pushing to Z:ReposSupplierAdminWebRepo searching for changes new remote heads on branch default [Error: abort: push creates new remote head 9cfbad6249a9!] new remote head 9cfbad6249a9 [Error: (did you forget to merge? use push -f to force)]

[Operation completed. Exit code: 255]





相关问题
Tracking Versions, Builds, Revisions, with TortiseSVN

I am the sole developer on a project and have been using tortoiseSVN for quite a while. Now Id like to start getting version information working correctly in the project I.E. show Major Version, Minor ...

Tips on upgrading CVS to git/hg?

We still use CVS, I use git and hg for my personal use though I m still a novice at both, but I realize they re much more modern and better, faster, distributed, etc. It s just everyone is so ...

How to handle different csproj [closed]

I am working in a team of five. We are working on a C# application with five csprojects. The problem is that for each csproject, each of my colleagues has their own ideas on how to reference a DLL; ...

Changing username in SVN+SSH URI on the fly in working copy

I am using SVN+SSH to check out a working copy of repository from an SVN server on which all developers are members of a developer group and have full read/write permissions on the repository ...

How to search for file in subversion server?

Is there a way to search for a file in a subversion repository? Something similar to Unix find command, with which I can find the location of a file in a repository. I know there is svn list, but ...

热门标签