Hello,
We use the following structure in Vault (4.1.4).
-Branches
---test 1.1 --> c:\test
---prod 1.0 --> c:\prod
-dev 1.2 --> c:\dev
In this example, version 1.2 is being developed, version 1.1 is being tested, and version 1.0 is the current release in production.
The arrows show the local working folder associations.
Let's say version 1.1 is ready to be deployed in production.
We rename branch "test 1.1" to "prod 1.1". Currently we keep branch "prod 1.0", we don't know yet how long we will keep old prod branches...
Now every developers must change their working folder of branch "prod 1.1" to c:\prod. To do so, they must first remove working folder of branch "prod 1.0":
-Branches
---prod 1.1 --> c:\prod
---prod 1.0 --> <empty>
-dev 1.2 --> c:\dev
Next, developers do a get latest on branch "prod 1.1" to refresh their c:\prod, but here is the problem.
The operation takes the same amount of time of an "initial" get latest (where the working folder is empty).
We talk of about 20 minutes, which seems acceptable for an "initial" get latest, but not when switching to another branch where 95% of the files are the same.
The client remains at the step "Determining files to download..." for most of the time.
Our branches have about 12500 files in 385 folders.
Is switching a working folder to a different branch considered unusual in Vault ?
There must be a better way to accomplish this ?
We don't want to wait this time at every release of our application.
Thanks,
Guillaume
Changing working folder associations
Moderator: SourceGear
Re: Changing working folder associations
When you change working folders, are the file statuses "Unknown?"
Linda Bauer
SourceGear
Technical Support Manager
SourceGear
Technical Support Manager
Re: Changing working folder associations
I did some tests, and got 2 different results after a change of working folders:
1. All files status becomes Unknown. In that case, the next Get Latest is really long (20 min.)
2. Some files becomes Renegade, but most status are blank. Get Latest is faster (2 min.). Need to select Overwrite to remove Renegade.
I do not know what conditions makes these different results.
1. All files status becomes Unknown. In that case, the next Get Latest is really long (20 min.)
2. Some files becomes Renegade, but most status are blank. Get Latest is faster (2 min.). Need to select Overwrite to remove Renegade.
I do not know what conditions makes these different results.
Re: Changing working folder associations
In order to improve performance, Vault stores information on the client side about the state of the files in the working directory, and also stores baselines of files when they are first retrieved to the working folder. When a file has been modified and no longer matches the baseline, the Vault client can determine whether the status is old, renegade, edited, etc. The Vault client maintains baselines for each working directory. When you modify a file, Vault compares the modified files to the baseline file for that working directory, and only sends the difference to the server, not the entire modified file.
When you change working folders to a folder already has files with the same names as files in the repository you may see files with the Unknown status. This means that the Vault client does not have baseline information for files in this working directory, unless a Get Latest was done at some point. It will try to calculate the differences with CRC's, but if that does not work, it will do a get latest.
You may be seeing different results with some folders, because the baselines were retrieved at some point after the working folder was changed.
That's why it's taking as long to resolve the file status as it would be if you just did a get latest.
You could try changing the working directory and getting the latest first time to establish it be baselines, then, it might be possible to change change working folders without so many files to resolve, and some of the baselines will be there. I think you've seen this on some of the folders.
Another option, is to use the Merge Branches wizard to merge items from the development branch into the production branch and not have to change working folders at all.
Let me know if you'd like information on this.
Meanwhile here are some links that explain the hidden state folders and the cache files.
http://support.sourcegear.com/viewtopic.php?t=927
http://support.sourcegear.com/viewtopic.php?t=131
http://support.sourcegear.com/viewtopic.php?t=6
When you change working folders to a folder already has files with the same names as files in the repository you may see files with the Unknown status. This means that the Vault client does not have baseline information for files in this working directory, unless a Get Latest was done at some point. It will try to calculate the differences with CRC's, but if that does not work, it will do a get latest.
You may be seeing different results with some folders, because the baselines were retrieved at some point after the working folder was changed.
That's why it's taking as long to resolve the file status as it would be if you just did a get latest.
You could try changing the working directory and getting the latest first time to establish it be baselines, then, it might be possible to change change working folders without so many files to resolve, and some of the baselines will be there. I think you've seen this on some of the folders.
Another option, is to use the Merge Branches wizard to merge items from the development branch into the production branch and not have to change working folders at all.
Let me know if you'd like information on this.
Meanwhile here are some links that explain the hidden state folders and the cache files.
http://support.sourcegear.com/viewtopic.php?t=927
http://support.sourcegear.com/viewtopic.php?t=131
http://support.sourcegear.com/viewtopic.php?t=6
Linda Bauer
SourceGear
Technical Support Manager
SourceGear
Technical Support Manager