Extremely Confused About Branching a Solution
Moderator: SourceGear
-
- Posts: 10
- Joined: Fri Jan 23, 2004 3:59 pm
Extremely Confused About Branching a Solution
I'm an ex-SourceSafe user, and mostly satisfied with Vault. But I haven't found in your documentation how to do something I used to do in SourceSafe: Sharing a specific labeled version of a solution or project.
In SS, you could use the Show History command to show the label you were interested in, then click on that label and Share it into a different folder. All the files would be pinned at that label. I would then use Change Source Control or Open From Source Control to set VS.NET to use the pinned version. When I needed to make a change, VS.NET would complain that it couldn't check out the file. I'd go to the SS IDE and Branch the file, then I could check it out. Later, I could merge the changes back into the trunk if I wanted to.
I have no idea how to do this in Vault. I've found the Share and Branch commands, and I've successfully gotten VS.NET to work with a Shared folder. The problem is that when I make a change, the change is still seen in the trunk. I can't risk this happening inadvertently - I need to be required to branch first.
Is there any document which goes through this complete scenario? Such things existed for SS, after all.
In SS, you could use the Show History command to show the label you were interested in, then click on that label and Share it into a different folder. All the files would be pinned at that label. I would then use Change Source Control or Open From Source Control to set VS.NET to use the pinned version. When I needed to make a change, VS.NET would complain that it couldn't check out the file. I'd go to the SS IDE and Branch the file, then I could check it out. Later, I could merge the changes back into the trunk if I wanted to.
I have no idea how to do this in Vault. I've found the Share and Branch commands, and I've successfully gotten VS.NET to work with a Shared folder. The problem is that when I make a change, the change is still seen in the trunk. I can't risk this happening inadvertently - I need to be required to branch first.
Is there any document which goes through this complete scenario? Such things existed for SS, after all.
John Saunders
John.Saunders at SurfControl.com
John.Saunders at SurfControl.com
Assuming you are using 2.0, this works similarily in Vault - you can invoke history on a folder, and labels will appear in the history list. You can select the version of the folder the label was applied to, and invoke Share on it (via the context menu or the Action menu). It will share then pin the folder at the version it was labeled at. Also, you can do this from the Show History command on the folder too.
-
- Posts: 10
- Joined: Fri Jan 23, 2004 3:59 pm
-
- Posts: 10
- Joined: Fri Jan 23, 2004 3:59 pm
I just tried this and got:
A Database Error Has Occurred (FailDBFault)
The message window showed:
[3/19/2004 13:58:07 PM] Refreshing folder tree
[3/19/2004 13:58:08 PM] Folder tree refreshed
[3/19/2004 13:58:18 PM] Preparing data to begin transaction
[3/19/2004 13:58:18 PM] Beginning transaction
[3/19/2004 13:58:21 PM] Share $/Projects/Web Sites/SurfControlResellersSoln
[3/19/2004 13:58:21 PM] Pin $/Branches/Web Sites/SurfControlResellersSoln
[3/19/2004 13:58:21 PM] Ending the transaction
[3/19/2004 14:00:35 PM] Server unavailable for transaction end
[3/19/2004 14:00:35 PM] Transaction failed
[3/19/2004 14:00:35 PM] Item $/Projects/Web Sites/SurfControlResellersSoln caused the transaction to fail: A database error has occured (FailDBFault)
[3/19/2004 14:00:35 PM] Transaction failed
And in fact the new shared, pinned folder does not appear.
A Database Error Has Occurred (FailDBFault)
The message window showed:
[3/19/2004 13:58:07 PM] Refreshing folder tree
[3/19/2004 13:58:08 PM] Folder tree refreshed
[3/19/2004 13:58:18 PM] Preparing data to begin transaction
[3/19/2004 13:58:18 PM] Beginning transaction
[3/19/2004 13:58:21 PM] Share $/Projects/Web Sites/SurfControlResellersSoln
[3/19/2004 13:58:21 PM] Pin $/Branches/Web Sites/SurfControlResellersSoln
[3/19/2004 13:58:21 PM] Ending the transaction
[3/19/2004 14:00:35 PM] Server unavailable for transaction end
[3/19/2004 14:00:35 PM] Transaction failed
[3/19/2004 14:00:35 PM] Item $/Projects/Web Sites/SurfControlResellersSoln caused the transaction to fail: A database error has occured (FailDBFault)
[3/19/2004 14:00:35 PM] Transaction failed
And in fact the new shared, pinned folder does not appear.
John Saunders
John.Saunders at SurfControl.com
John.Saunders at SurfControl.com
-
- Posts: 10
- Joined: Fri Jan 23, 2004 3:59 pm
I just tried this and got:
A Database Error Has Occurred (FailDBFault)
The message window showed:
[3/19/2004 13:58:07 PM] Refreshing folder tree
[3/19/2004 13:58:08 PM] Folder tree refreshed
[3/19/2004 13:58:18 PM] Preparing data to begin transaction
[3/19/2004 13:58:18 PM] Beginning transaction
[3/19/2004 13:58:21 PM] Share $/Projects/Web Sites/SurfControlResellersSoln
[3/19/2004 13:58:21 PM] Pin $/Branches/Web Sites/SurfControlResellersSoln
[3/19/2004 13:58:21 PM] Ending the transaction
[3/19/2004 14:00:35 PM] Server unavailable for transaction end
[3/19/2004 14:00:35 PM] Transaction failed
[3/19/2004 14:00:35 PM] Item $/Projects/Web Sites/SurfControlResellersSoln caused the transaction to fail: A database error has occured (FailDBFault)
[3/19/2004 14:00:35 PM] Transaction failed
And in fact the new shared, pinned folder does not appear.
A Database Error Has Occurred (FailDBFault)
The message window showed:
[3/19/2004 13:58:07 PM] Refreshing folder tree
[3/19/2004 13:58:08 PM] Folder tree refreshed
[3/19/2004 13:58:18 PM] Preparing data to begin transaction
[3/19/2004 13:58:18 PM] Beginning transaction
[3/19/2004 13:58:21 PM] Share $/Projects/Web Sites/SurfControlResellersSoln
[3/19/2004 13:58:21 PM] Pin $/Branches/Web Sites/SurfControlResellersSoln
[3/19/2004 13:58:21 PM] Ending the transaction
[3/19/2004 14:00:35 PM] Server unavailable for transaction end
[3/19/2004 14:00:35 PM] Transaction failed
[3/19/2004 14:00:35 PM] Item $/Projects/Web Sites/SurfControlResellersSoln caused the transaction to fail: A database error has occured (FailDBFault)
[3/19/2004 14:00:35 PM] Transaction failed
And in fact the new shared, pinned folder does not appear.
John Saunders
John.Saunders at SurfControl.com
John.Saunders at SurfControl.com
-
- Posts: 10
- Joined: Fri Jan 23, 2004 3:59 pm
An update:
I logged on to the computer running the Vault Server and also the Vault database. I tried the Share from the Vault Client 1.2.3 running on that box, and it worked.
So, perhaps this was a timeout error of some sort?
BTW, I miss being able to see the pin status, at least in the Properties dialog. I hope to find that 2.0 will either show a pin glyph on items pinned below such a pinned folder, or at least that the Properties dialog will say "Pinned at version 3" or something...
I logged on to the computer running the Vault Server and also the Vault database. I tried the Share from the Vault Client 1.2.3 running on that box, and it worked.
So, perhaps this was a timeout error of some sort?
BTW, I miss being able to see the pin status, at least in the Properties dialog. I hope to find that 2.0 will either show a pin glyph on items pinned below such a pinned folder, or at least that the Properties dialog will say "Pinned at version 3" or something...
John Saunders
John.Saunders at SurfControl.com
John.Saunders at SurfControl.com
-
- Posts: 10
- Joined: Fri Jan 23, 2004 3:59 pm
-
- Posts: 10
- Joined: Fri Jan 23, 2004 3:59 pm
Gladly.jclausius wrote:hmmm.... if the server didn't record an error, it must have been something that occured on the client.
please let us know if you encounter any other "server unavailable" error messages.
BTW, did the client record an error anywhere? Is there a way to get you more client-side detail for troubleshooting?
John Saunders
John.Saunders at SurfControl.com
John.Saunders at SurfControl.com
For some reason a file appeared twice in the Vault Pending Changes pane in VS. After checking in files one by one the problem was solved.jclausius wrote:John:
Is there anything in the server's log file ( default = %systemroot%\temp\sgvault\sgvault.log ) that indicates what possibly happened?
Vault 4.0.4 (15848)
Code: Select all
----06.11.2007 19:26:32 alex--THINK2(192.168.1.2)--SSL Disabled System.Data.SqlClient.SqlException: Violation of PRIMARY KEY constraint 'PK__#releaselistitem__22AA2996'. Cannot insert duplicate key in object 'dbo.#releaselistitems'.
The statement has been terminated.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)
at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
at VaultServiceSQL.VaultSqlSCC.ReleaseLocks(VaultSqlConn conn, Int32 nUserID, String strHostname, Int32 nRepID, String strXml) at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)
at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
at VaultServiceSQL.VaultSqlSCC.ReleaseLocks(VaultSqlConn conn, Int32 nUserID, String strHostname, Int32 nRepID, String strXml)
----06.11.2007 19:26:32 alex--THINK2(192.168.1.2)--SSL Disabled VaultLib.VaultRequestUndoCheckOut returned: FailDBFault
----06.11.2007 19:26:32 alex--THINK2(192.168.1.2)--SSL Disabled VaultLib.VaultRequestUndoCheckOut returned: FailDBFault
----06.11.2007 19:26:32 alex--THINK2(192.168.1.2)--SSL Disabled UndoCheckout returned: FailDBFault