When I do this with the MSSCCI provider I am developing I get this error ...
"The source control bindings for this project do not match the bindings reported by your source control provider. This solution, or part of it, may have been forked or branched. To update the projects source control bindings use the Change Source Control on the Source Control menu."
If I click OK, and let VS reload, everything is fine. But I can't figure out where this is coming from. I've even diffed all the files before and after this warning. The only difference is the .suo, which isn't under source control. What is the mechanism that causes this warning
Thanks,
JD

Open From Source Control problem
Norge
Alin,
Thank you for confirming my suspicions about the .sln and .vcproj files. Unfortunately, the underlying 3rd party tool I am using does change the file extensions in the archive. I will need to work around this issue.
Since I am writing the source control provider, I can see exactly what sccOpenProject is returning in the auxpath, localpath, projectname parameters. They are the same in both cases, i.e. when adding to source control and when trying to open from source control. Is there anything else that can cause this error
Thanks,
Rosa
Jayender.vs
Hi Rosa,
The solution and project files are supposed to be placed in source control database. Your source control provider should not modify their extensions, otherwise operations like OpenFromSourceControl, and GetStatus will be broken.
You should also not add manually files to the scc database where you think they should be. You should let the scci integration add those files to source control.
If you get "connection changed" message it means your source control provider reports now different bindings than whatever VS persisted in the solution and project files (which were also reported by your provider the first time the solution was added to source control). Your source control provider may be returning user or machine-specific data in SccAuxPath or SccProjectName strings that don't match anymore what's stored in the solution files.
Alin
Jan Sotola
It seems to me you're doing an OpenFromSourceControl operation, that creates an enlistment for a solution.
Normally, when opening from source control, the user selects a location from the store where the solution is, and a local folder where the solution will be placed.
Scci gets the solution locally, and starts opening it. The solution/projects may contain binding information or scci may read the bindings them from the mssccprj.scc file. In any case, these bindings will be used when the solution is actually connected to the store during opening (SccOpenProject is called), and may even be modified by the provider during the openproject call.
These bindings used when opening the solution differ from the initial location selected by the user for some reason, therefore the IDE warns the solution may have been branched and opened from the branched location (in which case the content of the solution/project files still points to the old location).
I don't know how the bindings look for your provider and why they are different in this case, but I think you may be able to figure out what's wrong by looking at the SccOpenProject arguments/output_values and see why they differ from the initial location selected by the user for open from scc.
Alin
Verne
I am getting the same message with the source code control provider that I am writing for a client.
1. Is the .sln file (or .vcproj file) not supposed to be put under source control My provider is basically a wrapper for PVCS and it modifies the extension of the file when it is checked in. The IDE complains that there is no .sln/.vcproj file in the store directory.
2. I then checked out the .sln manually and put it in the store directory, but it has been moved from the original location. When I try to Open from Source Control I get the message that the project can't be opened from source control (same message JD gets.)
Should the .sln and/or .vcproj files not be put into the source control store directory They are passed in as files to add to source control (sccAdd).
Thanks,
Rosa