Multiple Projects in VS2003

This forum is now locked, since Gold Support is no longer offered.

Moderator: SourceGear

Tim
Posts: 9
Joined: Fri Dec 10, 2004 6:05 am

Multiple Projects in VS2003

Post by Tim » Fri Dec 17, 2004 6:44 am

I have uploaded my solution (containing 5 projects).

If 2 developers are working on a particular project within this solution but different file within that project everything works fine.

However, if one of the developers adds a new file a message appears saying that csproj file is exclusively locked by the other developer.

Is this correct or should each developer create their own project file (.csproj) locally?

Thanks,
Tim

jclausius
Posts: 3706
Joined: Tue Dec 16, 2003 1:17 pm
Location: SourceGear
Contact:

Post by jclausius » Fri Dec 17, 2004 8:05 am

Tim:

I just answered a question about exclusive locks on .csproj files - http://support.sourcegear.com/viewtopic.php?t=2596.

You wouldn't want to remove .csproj files from version control, as you would get erratic build behaviors when people modify the file. Does configuring .csproj files to be mergeable in the Admin Tool solve your problem?
Jeff Clausius
SourceGear

Tim
Posts: 9
Joined: Fri Dec 10, 2004 6:05 am

Post by Tim » Fri Dec 17, 2004 8:57 am

I've added the .csproj as mergeable but the system reported that the .vspscc was exclusively locked so I made this mergeable but still get the exclusively locked message.

jclausius
Posts: 3706
Joined: Tue Dec 16, 2003 1:17 pm
Location: SourceGear
Contact:

Post by jclausius » Fri Dec 17, 2004 9:23 am

Was the file was already checked out? If so, just adding it to the list won't change the status, because the file will be checked out exclusively. Also, it may be necessary to restart the the client so it retrieves a fresh mergeable file list.

If you release the lock, and re-lock the file, take a look at the "exclusive lock" option ( you may have to enable the checkout dialog to display in the GUI client options ). If you can option is enabled, make sure it is unchecked.
Jeff Clausius
SourceGear

Tim
Posts: 9
Joined: Fri Dec 10, 2004 6:05 am

Post by Tim » Mon Dec 20, 2004 8:51 am

Is it best to exclude the .csproj file from source control as I'm still getting problems.

jclausius
Posts: 3706
Joined: Tue Dec 16, 2003 1:17 pm
Location: SourceGear
Contact:

Post by jclausius » Mon Dec 20, 2004 9:14 am

Excluding .csproj files would not be my recommendation.

Which tool are you using to check out the file? VS.Net or Vault GUI? Can you try a test with the Vault GUI?

- Log in
- Go to the Options -> Concurrent Development Style. Verify "Always request exclusive locks" is unchecked.
- Now click on the Command Dialogs setting. For the command used on Files, make sure Check Out is checked.

Finally, check out a .csproj file. On the checkout dialog, what is the setting for request exclusive lock?
Jeff Clausius
SourceGear

Tim
Posts: 9
Joined: Fri Dec 10, 2004 6:05 am

Post by Tim » Mon Dec 20, 2004 9:52 am

OK done everything you said.

When checking out a .csproj file the the dialog box with request exclusive locks checkbox is ticked but I am not able to untick it as it's disabled.

jclausius
Posts: 3706
Joined: Tue Dec 16, 2003 1:17 pm
Location: SourceGear
Contact:

Post by jclausius » Mon Dec 20, 2004 10:09 am

Can you look at the properties of your .csproj file from within the Vault GUI client? Is it marked "binary", "mergeable", "Use default for type"? Just double checking it is mergeable.

If not is not marked binary and request exclusive lock is checked / disabled, double check your Admin Tool's list of mergeable files for the repostory owning the .csproj file. The .csproj file is not in the list of mergeable files. Note, a change here, requires you to restart your Vault client in order for the changes to take affect.

Also note, I'm not sure the .vspscc files should be mergeable. Normally VS.Net takes care of checking those in / out. They are just text files, but I don't think they are checked out all that often. The VS IDE usually handles that. Are you getting conflicts there as well?
Jeff Clausius
SourceGear

Tim
Posts: 9
Joined: Fri Dec 10, 2004 6:05 am

Post by Tim » Mon Dec 20, 2004 10:19 am

it's set to use default for this type

It is also set to mergeable in the admin tools

jclausius
Posts: 3706
Joined: Tue Dec 16, 2003 1:17 pm
Location: SourceGear
Contact:

Post by jclausius » Mon Dec 20, 2004 10:52 am

So, after a restart on your client, it is still disabled / checked?

Can you :
- Open the Admin Tool
- Switch to the Repository Options tab
- Change the drop down for the Repository to the repository owning the .csproj file
- Take a screen shot - try to save it in PNG/JPG/GIF format.

You can mail the screen shot to me or post it directly to this forum.
Jeff Clausius
SourceGear

tomt84
Posts: 109
Joined: Tue Dec 20, 2005 4:44 am
Location: Manchester

Post by tomt84 » Thu Jun 22, 2006 8:10 am

Did this issue ever get fixed?

We're having issues with the same thing where every so often one of the two of us can't lock the .csproj file because it's already exclusively locked. We sometimes have to to a manual "get latest" inside the Vault client forcing an overwrite of those files to resolve the situation.

.csproj files have been added to the mergeable list.

We're on VS.NET 2005. One solution with two projects inside.

Thanks
Tom
Tom Fanning

jclausius
Posts: 3706
Joined: Tue Dec 16, 2003 1:17 pm
Location: SourceGear
Contact:

Post by jclausius » Thu Jun 22, 2006 8:16 am

Can you try a test checkout within the main Vault GUI of a .csproj file? (Hold down the shift key during checkout, if you've checked to bypass the checkout dialog.)

Is the exclusive lock option checked? Is the exclusive lock option enabled or disabled ?
Jeff Clausius
SourceGear

tomt84
Posts: 109
Joined: Tue Dec 20, 2005 4:44 am
Location: Manchester

Post by tomt84 » Thu Jun 22, 2006 8:23 am

jclausius wrote:Can you try a test checkout within the main Vault GUI of a .csproj file? (Hold down the shift key during checkout, if you've checked to bypass the checkout dialog.)

Is the exclusive lock option checked? Is the exclusive lock option enabled or disabled ?
manual checkout is fine from within main vault gui, with and without the exclusive lock option there enabled.

The "require exclusive locks" setting for the repository is disabled.

Anything else?
Tom Fanning

dan
Posts: 2448
Joined: Wed Dec 17, 2003 5:03 pm
Location: SourceGear
Contact:

Post by dan » Thu Jun 22, 2006 8:42 am

Is your local user option "Always Request exclusive locks" turned off (in Tools->Options->General)?

When the project file is checked out in VS, you can click the top left icon for advanced check out options, and that dialog has a checkbox for "Request exclusive lock". See what the value of that option is the next time the project file gets checked out in VS.

jclausius
Posts: 3706
Joined: Tue Dec 16, 2003 1:17 pm
Location: SourceGear
Contact:

Post by jclausius » Thu Jun 22, 2006 8:50 am

Let's try something:

1) Shut down ALL instances of VS.Net and Vault clients

2) From within the Admin Tool, double check the Repository Options has .csproj as a mergeable file type. If not, add and save the options for the repository holding your project

3) Start up Visual Studio .Net 2005. On Tools -> Options, look under the Source Control Section. On the plugins option, there is an Advanced button. Click that to bring up other Vault options. Ensure that Exclusive Locks is unchecked. Shut down VS.Net 2005

4) Start up VS .Net 2005. Try a checkout of .csproj. Now start up a Vault GUI client. Go to the file, is it still exclusively checked out?

5) If so, undo the checkout. Go to VS.Net 2005's option page again. Ensure you have the prompt for checkout dialog enabled. Try the checkout again. This time, within the VS.Net dialog, click the "Advanced" toolbar button on the checkout dialog. Is the exclusive lock option checked? If so, uncheck it. Now verify the type of lock from within a Vault GUI client.
Jeff Clausius
SourceGear

Locked