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
Problems with merge?
Moderator: SourceGear
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.
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.
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?
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?
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.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. 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.In your first scenario, that implies that no one should ever just check in. They should get and merge and THEN check in. True?
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.I don't understand your second scenario at all. If the file on disk is fine why would you want to overwrite it?
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.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?