Large Repository Auto Get Latest Version

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

Moderator: SourceGear

Post Reply
grantm
Posts: 5
Joined: Tue Feb 24, 2009 6:25 am

Large Repository Auto Get Latest Version

Post by grantm » Fri May 29, 2009 6:42 am

Hi,

We are currently trying to deploy a SourceGear Fortress repository onto production web server of ours.

Our plan to to publish all website changes into this repository and have the Web Server perform a "Get Latest Version" periodically.
We have currently built an executable that will automatically perform a "Get Latest Version" of this repository that we will schedule to run every 10 minutes.

One of our websites contains 1000's of images (size 1.3Gb) and is taking a really long time to "Get Latest Version".
Even when no changes are made.

What is the most effective way to keep a working space up to date with the latest version of a repository.
I want this workspace to update everytime something new is committed to my repository so i can utilise Source Gear as a publishing mechanism for my websites.

The way we currently "Get Latest Version" was advised in this post:

http://support.sourcegear.com/viewtopic ... 32&t=11673

using this mechanism through the API:

ServerOperations.SetWorkingFolder("$", workingfolderroot, true, true);
GetOperations.ProcessCommandGet(new string[] { "$" }, new GetOptions() {
MakeWritable = MakeWritableType.MakeAllFilesWritable,
Merge = MergeType.AttemptAutomaticMerge,
PerformDeletions = PerformDeletionsType.DoNotRemoveWorkingCopy,
Recursive = true,
SetFileTime = SetFileTimeType.Current
});

Any help on this will be greatly appreciated.
We really want to get Source Gear Fotress to work for us as we really enjoy using it as a Source Control System.

Please let me know if you need any further information to assist me with this questions

Kind Regards

jeremy_sg
Posts: 1821
Joined: Thu Dec 18, 2003 11:39 am
Location: Sourcegear
Contact:

Re: Large Repository Auto Get Latest Version

Post by jeremy_sg » Fri May 29, 2009 7:59 am

Can you enable logging in your program, and send us the debug log?

Code: Select all

SimpleLogger.Log.LogFilePath = "C:\\path\\to\\log\\file";
SimpleLogger.Log.Enabled = true;
SimpleLogger.Log.IncludeStackTraces = false;
SimpleLogger.Log.EnableClass("all");
That will help us understand where things are slowing down.
Subscribe to the Fortress/Vault blog

AjarnMark
Posts: 60
Joined: Mon Oct 29, 2007 4:22 pm
Location: Seattle, WA

Re: Large Repository Auto Get Latest Version

Post by AjarnMark » Fri May 29, 2009 11:16 am

grantm wrote:What is the most effective way to keep a working space up to date with the latest version of a repository.
I want this workspace to update everytime something new is committed to my repository so i can utilise Source Gear as a publishing mechanism for my websites.
If this is the objective, then skipping the performance question...what about using Shadow Folders? That would update a file system folder with new changes whenever something is checked in.

grantm
Posts: 5
Joined: Tue Feb 24, 2009 6:25 am

Re: Large Repository Auto Get Latest Version

Post by grantm » Fri May 29, 2009 2:21 pm

@AjarnMark

That sounds like a marvelous idea.
Please can you point me to some reference on how I can setup shadow folders.

@jeremy_sg

My tests are currently running slowly through the Vault Client as well.
I will try get some logs on monday morning I can post you

AjarnMark
Posts: 60
Joined: Mon Oct 29, 2007 4:22 pm
Location: Seattle, WA

Re: Large Repository Auto Get Latest Version

Post by AjarnMark » Mon Jun 01, 2009 10:07 am

grantm wrote:@AjarnMark

That sounds like a marvelous idea.
Please can you point me to some reference on how I can setup shadow folders.
Here's a link to information for Shadow Folders with Vault. I assume (as dangerous as that is) that this will also work with Fortress, but I have not tried it.

http://download.sourcegear.com/misc/vau ... olders.htm

Post Reply