I got the latest version of a Visual Studio solution on TFS. But when I try to open the solution in Visual Studio I get the following message:
Source Control
The solution you have opened is under source control but not currently configured for integrated source control in Visual Studio. Would you like to bind this solution to source control now?
Asking my colleague, I found out that he's been checking in the changes through Visual Studio without any problem.
Here's my question: Considering the fact that I can still check in my changes via IDE, what is the use of binding a Visual Studio solution or project to TFS (or more generally source control)? Except that "lock"/"red tick" icon appearing beside them in Solution Explorer.
Adding Solutions and Projects to Source Control: When you add a solution to source control, the solution becomes part of a dynamic versioning archive created and maintained by the source control provider. Each time someone checks in a new version of the solution, that version becomes part of the archive and is available to other source control users.
According to the warning message, It seems that you are opening from source control a solution that was incorrectly added to source control (it's missing some bindings strings that should have been in the sln or project files). You should click the button yes and Bind the projects correctly to their server location, then OK the dialog. The server file will be checked out and modified locally. You should checkin the changes after that.
Related
We have a standard installation of TFS 2010 with a handful of developers. We do have a number of projects with a number of branches but nothing to crazy. Frequently we will go to get the latest version of a solution and TFS will delete the project file (csproj) of one of the projects, a MVC 3 web project. Looking at the Source Control logs we see the following error:
One or more source control bindings for this solution are not valid and are listed below.
Source control bindings can be modified by selecting File, Source Control, Change Source Control from the main menu.
If we go into the pending changes view and undo the deleting of the project file everything works fine. Does anyone know what the error message means and know what it is that we are doing that is causing it?
Environment:
TFS 2010
VS 2012
SQL Server 2008
I am using TFS's Team Explorer to manage Visual Studio projects.
Recently, I've created a new Java project (not in Visual Studio) which I manually added to TFS using the Source Control Control explorer in Visual Studio.
After I added the Java project to TFS, I made some changes and bug fixes. Then, I went into Visual Studio and opened the Source Control Explorer to check in my changes, but TFS thinks that no changes were made.
It seems that I needed to check out the project before making changes. I guess I erroneously expected TFS to track that automatically, but okay.
So, using the Source Control Explorer in TFS, I checked out the project, and then I tried to check in pending changes. When I tried to check in, I got the following message:
All of the changes were either unmodified files or locks.
The changes have been undone by the server.
Is there a way to convince the server that indeed my project has changed? How can I check in the changes that I have made?
Thank you for any help.
I had my VB.NET project and associated solution (developed in Visual Studio 2005) in Visual Source Safe.
Recently started working with another developer and needed to clean up.
Somewhere along the way I broke a binding. I went into
File -> Source Control -> Change Source Control
and tried to bind things correctly.
I unbound the project that was incorrectly bound, and tried to rebind it. I have two projects in the solution. This is what I get:
Solution/Project Server Name Server Binding Connected Status
Solution: MySoln.sln X:\TheSource $/Tools/MySoln checked Valid
Project1 X:\TheSource $/Tools/MySoln checked Valid
Project2 X:\TheSource $/Tools/MySoln (C:\) checked Invalid
Where else would I look to try to get the bindings correct?
I may not have given enough information, but this is all I know to give.
Thanks as always!
The little question mark button is occasionally helpful.
Needed to check in that project to source control, and the binding became valid.
which version of VSS are you using?
In older versions of Visual SourceSafe (before 6.0c), after adding a solution of Visual Studio to its source control, the binding information was stored directly in the .sln and .proj files.
Since VSS 6.0c, all binding information is kept locally in files named MSSCCPRJ.SCC on the developer's machine.
My guess, the server path for project2 is incorrect. Double check the .prj file is under $/Tools/MySoln.
I have a solution that is checked into our TFS source control repository, but when I open it in Visual Studio 2005 the padlock symbol that usually tells you it is under source control is missing. The effect of this is that when I save after performing an action in VS2005 that would typically force a solution file checkout (e.g. adding a new project) I get the following error:
The file
xxx.sln
cannot be saved because it is
write-protected.
You can either save the file in a
different location or Microsoft Visual
Studio can attempt to remove the
write-protection and overwrite the
file in its current location.
All the projects auto-checkout fine, and have the padlock icons beside they correctly too. I assume I just need to mark the solution as being under source control somehow.
Any ideas??
Thanks!
Go to File->SourceControl->Change Source Control and set the binding of your project there to an appropriate location in TFS repository.
The link here (Change Source Control Dialog) will give you the details on how to deal with it.
Is there a way to integrate Visual Studio with VSS without doing source control binding?
The problem I have is that my team is opposing to add source control binding to the solution and project files, since they claim it adds more problems (restrictions) for them.
On the other hand, I really like to perform most of the source control operations from Visual Studio.
Is there any way to have the solution file and all the project files the way they are (without added binding to VSS) and still have VSS and VS integration without forcing other team members to use that integration.
I don't see a way to do it per project.
You can however you do it for IDE (all projects loaded).
It is under Tools\Options\Source Control
and then set Binding to None.
I see it in VS 2005 and 2008. I gave it a try in a project I wanted to convert from VS2005 to 2008 and appeared to work (I did not want to check in/out files for conversion).
The answer to your question is "no." Bindings and VS integration are one & the same with SourceSafe. I'm not even sure what it would mean for a solution to be integrated but not bound, or vice versa. What exactly are your teammates looking for?
You can adjust bindings per-project in the File -> Source Control -> Change Source Control dialog. You can also adjust them per-user (effectively; not a supported configuration) by excluding the *scc files from source control. However, you are likely to encounter problems down the road if you try to manage these files yourself instead of using the Add Solution To SCC wizard. More info:
http://alinconstantin.dtdns.net/WebDocs/Scc/_Bindings.htm
http://alinconstantin.dtdns.net/WebDocs/Scc/_WebEnlist.htm
The binding is stored in the .vssscc, .vspscc and MSSCCPRJ.SCC files.
If you don't add these files to Visual Source Safe every developer can configure his bindings like he wants.
Since we use Perforce, I'm not 100% sure if this works with VSS.