Am 21.08.2011 05:31, schrieb Stewart A. Brown: > I am wondering whether or not git has the functionality to handle > my situation. > > I have git repositories at multiple sites. At each site the git repository > has site dependent sources. Each repository is organised something > like: > > top/a/local > b > c/d/extensions > e > > The directories top, a, b, c, d, and e have sources that need to be > pushed or pulled between the repositories at all sites. The directories > 'local' and 'extensions' have sources that must be managed within sites > but never pushed or pulled between sites. > > The ignore mechanism will not suffice because the files in 'local' and > 'extensions' must be source managed. I have looked a bit into > submodules, filters, and hooks. None of these jumps out as obvious, but > they are rich mechanisms with plenty of subtleties. > > Does git have a way of letting me do this? It would work if you could set it up like this: top/shared non-shared-stuff where "top" is your git repository, "shared" is a submodule you put all the non-site specific stuff in and have that version controlled together with your local stuff. If you can't rearrange your directory tree you might be able to use symlinks to achieve that layout: top/a/local -> ../local b c/d/extensions -> ../../extensions e top/extension top/local where "a" is your shared submodule that lives together with "extensions" and "local" in the top level repo. -- 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