Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What's the difference between workspace and (connected to server) solution?

I know I should have googled such kind of topic, but I just couldn't find a clear article.

The part I don't understand is, what is the difference if I just make two solutions on my computer mapped to the same TFS folder, or if I create two workspaces? At some level I understand there is difference between solution and TFS workspace, because a solution can be totally local and not connect to any version control. But does a workspace I created always have a solution in my local computer? If so, I really don't understand why I should have such a workspace.

Another thing I don't understand is, after I open one solution in VS, I can still switch to another workspace (which is always in another solution if my previous question is yes) in Team Explorer and Solution Explorer. What is the idea behind that? I find such operation confusing.

BTW I am actually not sure whether workspace is the thing I am looking for. What I want to do is: I have multiple assignments on the same software project of the same development branch. So I want to have the ability to be working in one assignment without affecting other ongoing assignments. Previously I had to either create a new solution (I actually did so when I needed to work with a different branch), or just simply shelve the changes to one assignment -> undo pending changes -> do changes to other assignments. I was told the workspace is the solution, but after reading some articles, I still have no clue how to use it.

like image 212
tete Avatar asked Aug 22 '13 08:08

tete


1 Answers

A TFS workspace defines what change control files and folders and mapped to local files and folders (and thus is specific to the combination of user and machine).

A VS solution defines a collection of projects and their mutual dependencies worked on as a unit (usually to create a single software product of one or more executable files and libraries).

This these concepts are orthogonal. A workspace can contain many folders each within a separate folder.

Unless you want to be able to work on multiple different things at once that you need to check in separately I would strongly suggest avoiding multiple workspaces until you are more comfortable with change control. While multiple workspaces is a powerful approach in certain use cases, it does add complexity.

Equally I would suggest avoiding having a single folder containing multiple solutions, this is not the way VS operates by default and needs careful management to avoid problems.

like image 132
Richard Avatar answered Oct 20 '22 04:10

Richard