Sample Finalbuilder 4 Walkthrough for Check Out If Updated

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

Moderator: SourceGear

Post Reply
ssmith
Posts: 1
Joined: Thu Dec 01, 2005 12:21 pm

Sample Finalbuilder 4 Walkthrough for Check Out If Updated

Post by ssmith » Thu Dec 01, 2005 12:26 pm

I saw this thread between christian and dan and hopefully one of them will see my post and have a quick answer (http://support.sourcegear.com/viewtopic.php?t=2348). I'm using FinalBuilder 4, CruiseControl.NET, and Vault together to create a build server for continuous integration. My first task in FB is to perform a recursive Get Latest for the project in question. This works just fine, but I'm pretty sure it's overkill since (I assume) it's grabbing all the files every time I run the build script. I would prefer (and I know this can be done but am not sure of which command I need to use) to do a check to see which files are updated, and then only grab those. Now, if Vault is automagically smart enough to do that without me needing to script it, so much the better, but I figure I'll err on the side of caution and ask here.

So, I guess I have two fairly simple questions, really:
1) Does a Vault Get Latest always move all the files over the wire, or does it figure out what needs to move and only move those?
2) Assuming Get Latest with wildcard will actually move all files all the time, has someone got a series of commands I can use to determine which files have changed and only grab those?

Having written all this, I'm 95% sure the answer to #1 is going to be that Vault is smart, which will make me happy since it will mean I won't need to do any extra work... Thanks!

ian_sg
Posts: 787
Joined: Wed May 04, 2005 10:55 am
Location: SourceGear
Contact:

Post by ian_sg » Fri Dec 02, 2005 8:59 am

Vault is "smart" about only retrieving what's necessary if you're retrieving to a working folder. From the perspective of the command-line client:

These will use a working folder and be "smart" about what to retrieve:

Code: Select all

vault get ... (uses working folder for user and repository folder specified)
or
vault getlabel -labelworkingfolder c:\working_folder ... 
These will use a non-working folder and always retrieve everything:

Code: Select all

vault get -destpath c:\non-working_folder ...
or
vault getlabel -destpath c:\non-working_folder ...
Ian Olsen
SourceGear

Post Reply