I must get my head round Global Project Linking (or Global Imports, as Flare refers to them) and External Resources. From day one of my Flare usage I identified (largely correctly) which files would be global/shared and prefixed them all with GLOBAL. But after a few hiccups with GPL, and after discovering it was really global project COPYING, I put all attempts to use it on the back burner and up till now, I've been manually keeping all my GLOBAL* files in sync using Beyond Compare until I decide what to do. I've got so much shared content now that I can't really put it off any longer.
I think I understand how to set up both GPL and External Resources, and think I've grasped some of the pros and cons, but before I go for my proposed scheme, I'd be interested to know what others do, and what others think.
Some shared files rarely change, and when they do, I'm happy to change them in the context of a master project and reimport in each project that uses them (for example, page layouts, copyright text snippets, standard company graphics). I propose to use GPL for these, and select the Auto-Reimport before Generate Output option. I propose to exclude all project local copies from source control and just put the files from the master project in source control, since the project local copies are just that, copies.
Is this how others use GPL?
Then I have some common files that I think aren't so suitable for GPL. These files may change more frequently, and will usually need to be changed in the context of a working project, so I can see that the changes are correct and/or work on the changes as I go (for example, stylesheets, the dictionary file, shared topics or snippets). It's a real pain to work on these if they are global imports (that's the main reason I abandoned attempts to set this up earlier) as you either need to break the import link, or move to the GPL project to make your changes, taking any necessary working context, topics etc with you. So I thought I'd set these up as External Resources, since I can make changes in the project or in the external files as required, then synchronise later. But that poses more questions.
It seems that although two-way synchronisation is supported, it is completely manual, and I must always remember to synchronise my local project changes back to the copy in the external file when I'm ready, and also then manually synchronise the other projects to the copy in the external file. Is that so? Sounds tedious.
And it seems that the synching will only work provided I remember to select the option to set up the sync mapping (which I note is stored in the .flprj file!) when I added the external file in the first place. If not, then I've effectively got a once-only copy, and no obvious way to see that it's an (unmapped) copy of an external file?
Finally, do those of you that use external files include the local copies in source control? It seems that there is a far greater chance of losing changes than with GPL, since there is nothing to stop you changing the local copy, and nothing to remind you to sync the changes back to the external files and check in the changes there.
Who used External Resources, and how to you make them work for you?