Problems with merge?

If you are having a problem using Vault, post a message here.

Moderator: SourceGear

Post Reply
epsobolik
Posts: 33
Joined: Mon Jan 07, 2008 10:19 am
Location: Lexington, MA
Contact:

Problems with merge?

Post by epsobolik » Fri May 02, 2008 9:08 am

We are just starting to use Vault (4.1.1.18060). I'm not sure we fully understand the merge feature. With VSS, 2 users would have a file checked out concurrently and when they checked in, VSS merged the files (C++ source code) without issue. We've been experiencing some issues doing the same thing in Vault - as in, the last one to check in was the one that ended up in Vault - no merge. We're doing some experimenting to see if we can duplicate/understand it. In the meantime, does anyone know of any caveats we should know about? For instance, when you check a file out, you get a choice of setting the local time to the current time, the checkin time, or the last modified time. Is there a right one to select?

Phil

Beth
Posts: 8550
Joined: Wed Jun 21, 2006 8:24 pm
Location: SourceGear
Contact:

Post by Beth » Fri May 02, 2008 1:19 pm

Here's what is supposed to happen.
File 1
User 1
User 2

User 1 and 2 both check out File 1. Both make changes. User 1 checks in. User 2 can't check in, but gets a Needs Merge status.

If User 2 performs a get and merges to his/her disk, then User1's changes are there already.

If User 2 selects Resolve Merge Status rather than using Show Merge, first that user effectively tells Vault that the file on disk is fine as is and to overwrite.

If you're doing it correctly and it's still overwriting, then send an email to support at sourcegear.com so I can look closer.

There isn't a "right" time to select. That's completely user preference. I think most companies though agree on what one to use so that it's consistent across users.

epsobolik
Posts: 33
Joined: Mon Jan 07, 2008 10:19 am
Location: Lexington, MA
Contact:

Post by epsobolik » Fri May 02, 2008 1:42 pm

I'm a little confused. In VSS, User 2 would just check in and his local copy would be merged. Does this not happen in Vault?

In your first scenario, that implies that no one should ever just check in. They should get and merge and THEN check in. True?

I don't understand your second scenario at all. If the file on disk is fine why would you want to overwrite it?

It sounds like if a file has been checked out by User 1 and User 2, they will both get a Merge Status entry. What should they do when the get one of those?

Beth
Posts: 8550
Joined: Wed Jun 21, 2006 8:24 pm
Location: SourceGear
Contact:

Post by Beth » Fri May 02, 2008 1:58 pm

I'm a little confused. In VSS, User 2 would just check in and his local copy would be merged. Does this not happen in Vault?
No, because the baseline does not match the server any more. A needs merge just means you have to take a look at it and decide how the merge needs to look.
In your first scenario, that implies that no one should ever just check in. They should get and merge and THEN check in. True?
No. This is just an alternative way of going about it rather than doing a Needs Merge. by performing a Get and using 'automatic merge,' a new baseline is pulled to disk, and User1's changes are incorporated into the file. That is, unless there is a conflict, which it will tell you about.
I don't understand your second scenario at all. If the file on disk is fine why would you want to overwrite it?
That's just an explanation. You have to Merge, before you can Resolve Merge Status. If you skip the Merge Status, you will end up overwriting.
It sounds like if a file has been checked out by User 1 and User 2, they will both get a Merge Status entry. What should they do when the get one of those?
Only the second one to check in will have to merge. That user then either performs a Show Merge on the file to use our merge tool on it, or perform a Get with 'Automatic Merge' to merge it.

Post Reply