GizmoTN76 wrote:
Thanks Simmon that was very helpful. I hadn't thought about trying to mix the source controlled and non source controlled files in the same project.
I've pondered turning off the generated date stamp in the files myself as sourcesafe is smart enough to avoid creating dummy versions if the file doesn't actually change but it just creates worthless entries if that's the only thing that does indeed change.
Wouldn't suppose you've also got a good solution for sharing modified templates out to other team members have you? I've thought about just putting the whole runtime directory under source control and just having people set their root to their program files dir (assuming they remember to get the latest version) or possibly trying to change the template bindings to point to a unc path (if that even works) but I haven't really come up with the best answer yet. I don't change the templates that often but all it takes is one missed tweak to cause chaos if someone else regens. Right now the team is small so it's not a huge issue but if we scale out I can imagine some pain trying to keep the templates in sync.
We've been pretty determined to ensure that we don't modify anything that comes out of the box for the very reasons you mention and Kudos to Frans for his designs which allow this to happen. We don't have very much custom stuff at the moment but the layout described below should allow us to do any customizations in the future without modifying anything more.
Here's what we have currently (YMMV):-
Our project is called "BPOSS" and lets call our root folder XXX.
XXX\BPOSS.lgp
We have created folder for all custom items as follows:-
XXX\LLBLGen.Pro.Custom\TaskPerformers
XXX\LLBLGen.Pro.Custom\Tasks
XXX\LLBLGen.Pro.Custom\Templates
XXX\LLBLGen.Pro.Custom\TypeConverters
In the Project specific properties, we have added relative entries to the Additionalxxx entries.
.\LLBLGen.Pro.Custom\TaskPerformers
.\LLBLGen.Pro.Custom\Tasks
.\LLBLGen.Pro.Custom\Templates
.\LLBLGen.Pro.Custom\TypeConverters
In TaskPerformers, we have TaskPerformersAce.dll (we append all our customized stuff whether it be LLCoolJ or DevExpress or anything else with "Ace")
In Tasks, we have "BPOSS.tasks" and "BPOSS.Adapter.General2005.preset"
In Templates, we have "BPOSS.templatebindings" and "typedListAdapter.addition.template"
In TypedConverters, we have nothing currently.
Because these custom files are in addition to whatever comes out of the box, the priority settings in the BPOSS.lgp file mean they just get used in preference to the standard items.
Cheers
Simon