Pros and cons of using template project or global project

This forum is for all Flare issues not related to any of the other categories.
Post Reply
Boone
Propeller Head
Posts: 44
Joined: Thu Jan 31, 2008 10:24 am

Pros and cons of using template project or global project

Post by Boone »

I've read the Flare Guides related to project templates and global project linking. If I'm understanding correctly, there appears to be some overlap in functionality between templates and global projects. I want to build a single project with common topics, images, stylesheets, etc, that can be used as the basis for creating other projects. It appears that I could accomplish this goal using either a global project or a template project. I'm leaning towards a template project because it seems at this point to be more straightforward.

I'm looking for input on pros and cons of each method. I'd love to hear some best practices from MadCap on this subject!
Thanks
doc_guy
Propellus Maximus
Posts: 1979
Joined: Tue Nov 28, 2006 11:18 am
Location: Crossroads of the West
Contact:

Re: Pros and cons of using template project or global projec

Post by doc_guy »

The decision probably hinges on whether you want to keep the child projects in sync with each other or not.

A template is taken at a single point in time. Projects based on the template inherit any template settings, but are not connected to the template anymore and any changes made need to be made to the individual project files. Every project based on that template has to be updated individually. This is fine if you don't expect to keep the projects in sync.

Global Project Linking keeps the child projects in sync by re-importing linked files into the child project either on demand, or at build time (if you set the build setting). If you try to edit a linked file in the child project, Flare throws an error message, telling you that the file in question is linked to the master project, and any changes will be lost when the project is reimported. (It also gives you the option to remove this file from the import, but then you are breaking the feature that keeps the files in sync.)

So if you are just looking for a common starting ground, and then you expect your projects to be independent entities, the project template is the way to go. If you want the files to be linked and updated after they are created, then you'll want to use global project linking.
Paul Pehrson
My Blog

Image
Boone
Propeller Head
Posts: 44
Joined: Thu Jan 31, 2008 10:24 am

Re: Pros and cons of using template project or global projec

Post by Boone »

Thanks for such a prompt reply!

That's what I thought. The global project sounds good because of the sync capability, but it gets a little complex when using TFS for source control - which is what we are using. In this case, you would need to put the global project and child project(s) in TFS, right? Would the general workflow for synchronization be: check the global project out of TFS, update it, then check it back in; then check out each child project and re-import (either on demand or at build), then check each child project back in?

Using the template method: is there a way to update the template with modified and new files? I know this wouldn't automatically update projects that had already been created from the template, but new projects would get the latest, right?

Either way - sounds like it would be a good idea to have a single person managing this.
NorthEast
Master Propellus Maximus
Posts: 6426
Joined: Mon Mar 05, 2007 8:33 am

Re: Pros and cons of using template project or global projec

Post by NorthEast »

I have a 'template project' that contains files which are used by many projects, such as stylesheets, master pages, skins, etc.

All projects are in TFS.

The regular projects use a project import (global linking) to get the files from the template project.

The process is to:
1) If you're changing the template project yourself, update the files and check-in any changes.
1b) OR, if someone else changed the template project, open the project and do a 'get latest'.

2) Open your regular project(s) and do reimport, which will get the latest files (and automatically check-out any that changed).

The only tricky bit is that because a project import is linked to a specific location, then that path must be the same for all users.
So I'd recommend setting up the project import so it gets the project from a network path (\\server\projects\x), or from a mapped drive letter that points to your own local folder (Z:\ = c:\users\bob\projects\).
Post Reply