How can I get TFS working again? - visual-studio-2010

Today I checked out a new project in TFS (Visual Studio 2010): Which, if any, folders do I need to create before checking out a TFS project?
The .sln file wouldn't save (said it was read-only, and even when changing that in Windows Explorer, it made no difference).
So, I created a new folder, created a new .sln, and then copied all the other files over to that structure.
Now, somehow, TFS has "given up the ghost" On connecting (I do seem to connect, I can see the projects in the Team Explorer pane), when I 2-click the "Source Control" item below a project, I get, "Team Foundation Server is not your current Source Control plug-in. Click here to set the current Source Control plug-in."
If I do fall for its ploy, I then see, "Error Command "Tools.Options" does not accept arguments or switches."
What in blue blazes is going on?!?
I reinstalled ("repaired", as that was the only option other than uninstall) MSSCCIProvider, but that did no good - I get the same errors. How can I get TFS back?
UPDATE
I am connecting to TFS, because when I open VS and select the "Connect to TFS" (verbiage?) link, it opens the Team Explorer tab, with a visual representation of the TFS server, with the various "areas" below that, and then, for the area I'm currently working on:
Handheld
> Work Items
Reports
> Builds
Source Control
...but when I mash "Source Control," it tells me, "TFS is not your current Source Control plug-in. Click here to set the current Source Control plug-in."
But that's a bait-and-switch, because when I do (click there), I get the err msg, "Error< crlf > Command "Tools.Options" does not accept arguments or switches."

As per my comment, it looks like you have the wrong source control plugin enabled in Visual Studio. In visual studio go to "Tools", "Options", "Source Control"
Make sure that the "Current source control plug-in" is set to "Visual Studio Team Foundation Server"
You should now be able to use Team Explorer to manage your code in TFS

Related

Import project to Visual Studio online

I am working on a Xamarin.Forms project in Visual Studio and have recently got another laptop. I would like to be able to edit the project when using my work laptop so I searched online and found Visual Studio Online.
The problem is I don't know how to import my current project into the Visual Studio online to get it on the other laptop. I have tried watching tutorials but all others explain how to create a new project and couldn't find any tutorials online that explain it easily.
The first step is to sign up for Visual Studio Team Services and create a new project:
Make sure you select Team Foundation Version Control during this step.
Once the project is created, you can head over to Visual Studio and make sure you're connected to TFS (Team Foundation Server).
Open the Team Explorer panel if it isn't already open (you can find it in View->Team Explorer) and click "Connect"
Once you do that, a window will open that will allow you to sign into your Microsoft account that you used to create the TFS server. Once signed in, you can select your project and click "Connect"
Your project should open in the Team Explorer panel where you should then click "Configure Workspace"
Click "Advanced Options" and then change the Local Folder to point to the folder that contains the solution you want in source control.
Click okay and say no when it asks you if you want to get latest from source control.
You can now go to the "Pending Changes" page in the Team Explorer and click on "Detected XX add(s)" and then click "Promote" in the resulting dialog.
The final step is to add a comment and check in everything!
Your code is now in source control!
From here you can proceed like normal in setting up TFS on your new computer and getting your code from TFS!

No TFS-connection in Visual Studio Solution Explorer

Our project is on Visual Studio Team Services (was TFS Online) and we are using visual studio 2013, but I dont seem to have any connection from Solution Explorer to Team Services.
I have no problem opening Team Explorer-> Source Control Explorer and Get Latest, but when I open the .sln file in visual studio, it seems disconnected to Team Services in the sense that I cant find menu items like "Get Latest", "Check out" and so on. When I create new items in VS they aren't added to Team Services, I have to add them by using Source Control Explorer.
My mappings seems fine, they point to the folders where I have my source code locally.
So, how to I connect my VS to Visual Studio Team Services?
Under Source Control Explorer in VS, double click the .sln file, then go to Solution Explorer to check whether the files under the solution is source controlled.
Additionally, you can go to File--Source Control to see whether you can see "Get latest version" or "Check Out for Edit".
Open the File - Source Control - Manage Source Control and click Bind for each project in the solution.
Also make sure that Team Foundation Server is selected as the version control tools in Tools - Options - Source Control.

Using VS2013 and VS2010 with TFS2010

We currently have TFS 2010 and mostly work with VS2010. We're gradually starting to use VS2013 with the Express version.
How come when I open the Source Control Explorer in VS2013, everything shows as "Not Mapped" even though it IS mapped? When I try to map something, it gives me "The path X is already mapped in workspace Y"
I can't open anything from the Source Control Explorer since it prompts to map, but I manually open the project from the local folder, and see the little lock and + symbols in the solution explorer. I can even do check-ins and undos.
Check that source control explorer is connected to the same workspace as VS2010 by looking at the workspace drop down at the top of SCE. If your VS2010 workspace is a server workspace, and you created a new local workspace in VS2013 you'll see two workspace names showing.
Also, when you open an existing solution in Visual Studio, if that solution is in a workspace different than the one source control explorer is currently showing, SCE doesn't switch over automatically. You have to do it manually, again via that workspace drop down.

How to have TFS 2010 detect changes done to files outside of Visual Studio?

I'm using Team Foundation Server 2010 with Visual Studio 2010.
Whenever I modify a file outside of Visual Studio, TFS doesn't seem to detect the change done to the file, and thus doesn't offer me the option to check-in the file after it has been modified.
How can this be solved?
TFS has a "Reconcile" command for this:
Open the Source Control Explorer
Right-click on the folder with the changes and choose Compare
Select the files you want to reconcile (press CTRL+A to select all files)
Click on the Reconcile button
Set the options in the Reconcile Folder Differences dialog. Make sure Files that do not have pending changes is set to Check Out
Click OK
If you have local changes the Check Out dialog will be shown. Set the preferred Lock type
Click Check Out
See also: Reconcile differences between folders
If you have a network connection to your server while you're working outside of Visual Studio, it's probably best to go ahead and check the file out before editing it, either using the tf command line client, or using the Windows Explorer shell integration that's available in the TFS Power Tools release. (Plus an increasing number of other tools have TFS integration that makes this automatic, but if you're just using notepad, this still needs to be a manual step.)
Of course, there are many times when you're working and you don't have a network connection available that allows you to check out the files.
If you know what files you've modified, you can just check them out from within Visual Studio, then you'll be able to check them back in.
If you don't know what files you've edited, you can detect the changes by running the tfpt online command (also part of the Power Tools release). This will locate the files that have been modified locally and check these files out from the server.
This worked for me, using the TFS Power Tools:
tfpt online /adds /deletes /diff /noprompt /recursive directory-name
(where directory-name is the path to the directory to be updated, otherwise it will detect changes throughout your entire TFS repository)
If you want to know what it would do without it actually making any changes, you can force it to do a dry run by adding the /preview switch.
*1- make changes outside of Visual Studio
2- go to Visual Studio and open Source Control Explorer
3- right click on the folder > "Check Out for Edit" > "Check Out"
4- right click on the same folder > "Undo Pending Changes..." > "Undo changes" > "No to All"*
I tested this workaround on a branch and it helped me a lot. But there are only new files and new folder who has to be done manually.
I recommend to create a branch before the operation. It isolates you the time of the operation.
Note: This technique does also the files identical cleanup that TFS always marks as modified.
Try this. It's some sort of workaround, but it works:
make changes outside of Visual Studio
go to Visual Studio and open Source Control Explorer
right click on the folder > "Check Out for Edit" > "Check Out"
right click on the same folder > "Undo Pending Changes..." > "Undo changes" > "No to All"
That's it. The changes are visible now.
There's also another solution to get TFS to figure out the files that have changed outside of Visual Studio:
Open the solution offline
In Solution Explorer select the solution file and then press the Go Online button ()
TFS will automatically scan the solution for changes after this.
Step one can be achieved in a number of different ways. Here are some:
Use the GoOffline Extension - very simple and effective.
If you're asked for TFS credentials when opening the solution (no automatic domain auth), then don't enter the credentials. The solution will open offline and you'll login after pressing the Go Online button
(extreme solution) Disconnect your network cable; Open the solution; Connect the network cable.
Visual Sourcesafe works like this too and the way I get VSS or TFS to notice the change is by checking the file out once inside Visual Studio.
Open Source Control and go to your TFS folder. Right-click on the folder and choose 'Compare'.
Notice that your edited files show up marked in red.
I find this is better than tfpt online which also gets you files that are not readonly and not edited.
I had this problem in the past, when my Internet was down and I worked offline, and most of my changes didn't appears in Team Explorer.
Following these steps:
First, In the solution explorer, select the folder that you want to re-conciliate (for me, it was my entire solution folder), and select Compare...
Click in Modify Filter, and in the filter text-box, you could type:
*.cs;!obj\;!bin\;!packages\;
In this example, it will include in the search only C# files and exclude in the folders: bin, obj and packages.
Notice the column Pending Change has the info whether the file is marked as edit, add, etc... or nothing...
To mark as edit (when the local item has a matching server item), select the file and choose Check out for Edit...
To mark as add (when the local item doesn't have any server item), select the file and choose Add Files
Finally, I am not sure why the projects are not listed here (after I remove *.cs filter, still doesn't show up), so rebuild the solution to make sure the projects updates as well
+ In the solution, click the connect button (if shows up) that said Go Online.
I found that in Visual Studio 2015, with the project open, Visual Studio discovered for itself that files had been modified externally, and automatically checked them out without me having to do anything. Checking in the project in the normal way saved the external modifications.
In my case, the following worked (at least the one time I tried it):
Go to the Pending Changes panel
Select View Options under either Included or Excluded changes.
Switch between Show All and Show Solution Changes
Switch back if desired
Changing the View Option appears to force a refresh of modified files.

How to add TFS bindings to a Visual Studio 2010 project?

There's a question already discussing how to add project/solution bindings to TFS, however it seems to only apply to Visual Studio 2008 (I am unable to find the "Change Source Control" dialog in VS2010).
I have a solution and source code on my local machine already in TFS, however it does not have TFS bindings (the thing that produces the padlock icon in the Visual Studio Solution Explorer and allows automatic checkout).
How can I add bindings to an existing TFS project using Visual Studio 2010?
In VS2010 check Tools>Options>Source Control and see if set to TFS. If not that might be why you don't see File->Source Control->Change Source Control.
I ran into this problem and, for me, the issue was that my solution was offline with respect to TFS. Upon trying to change source control, I received a message stating that it is already associated with source control but is offline. I placed the solution on-line, per my recollection, using the File->Source Control->Go Online menu option and this seemed to fix the problem.
Go to the source control explorer under Team Explorer, where you can see your repository. Right click on the top folder that maps to the folder on your local machine. There's an option called "Map to local folder". Map this to the folder on your local machine. This will set up all the bindings for TFS for your project.
I had the same problem and the following steps solved it for me in VS 2008.
Unfortunately, I didn't record the exact steps and don't want to add a new project to our TFS to try again, so the steps are from memory.
Go to File Menu -> Source Control -> Open from source control
Select solution file from TFS hierarchy
Accept any warning about project already being on local disc
A popup dialog comes up saying something along the lines "This solution is already under source control, but no bindings exist. Do you want to add them?"
A selector shows all projects in a grid and allows adding the required bindings. Add TFS server setting to each project (select all lines in grid at once and press a button at the top. I can't remember what it was called, but it was fairly obvious).

Resources