Greetings, I have a situation and I'd like to find out if Git would be a good solution for it. And if it is, how to implement it. I'll describe it in as much detail as possible, but if something's not clear, please let me know. We develop several courses for many clients. A few parameters: 1) Each course has several variations. 2) Each variation references customized and non-customized content. 3) The non-customized content is held in the library directory. 4) The customized content is held in a directory named a concatenation of the client's name and course name and variation e.g., appleComputer_courseOne_variationFour. I'd like to achieve several things: 1) versioning for everything, non-customized and customized, 2) eliminate the duplication. Currently courses are nearly exact copies of one another with the exception of a few imgs, flvs, and xml files referencing those imgs and flvs. In addition, the variations of a course are nearly exact duplicates of one another with the exception of a few small changes in config.xml file (see directory tree below). As it stands, when we create a new variation of a course for a client the work flow is: 1) Copy and rename a non-customized course variation to the client's name appended with the course name and variation e.g., appleComputer_courseOne_variationFour. 2) Create an assets folder with flv, img, xml child directories and place the corresponding custom flvs, imgs, and xml in these folders. 3) Modify config.xml to reference the files and directories created in step #2. Below is a rough mapping of the directory tree along with a note about each level. |- custom (Holds all clients customized content for all courses and their variations.) | `- Client name appended by course variation code (All content for one course and its variations. This unit and its children repeat for each course.) | |- assets | | |- flv | | | `- Customized FLVs for this client's course variation go here (1-3 files) | | |- img | | | `- Customized images for this client's course variation go here (1-3 files) | | `- xml | | `- Customized XML for this client's course variation goes here (1-3 files) | |- config.xml (This file pulls all aggregates all the customized and non-customized content, the ring to rule them all.) | `- features | `- feature name here (All customized content for a feature. This unit and its children are repeated of each feature.) | `- Custom XML and SWFs (1-3 files) |- library (Holds all of the non-customized content for all courses and their variations) | `- Course name here (All content for one course and its variations. This unit and its children repeat for each course.) | `- assets | |- flv | | `- All non-customized FLVs for all course variations go here (~400 files) | |- img | | `- All non-customized images for all course variations go here (~600 files) | `- xml | `- All non-customized XML for all course variations goes here (~300 files) `- templates (Holds all templates for all courses and their variations) |- features | `- All SWFs for templates for all course variations go here (~10 files) `- pages `- All SWFs for templates for all course variations go here (~50 files) How should I organize this using Git? Should all of the non-customized content be in one repository with each course variation as a submodule? Have all customized content in another repository, then when we need to make a new course add the non-customized variation as a submodule? Patrick -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html