On 20 December 2013 00:39, Cox, Michael
On Thu, Dec 19, 2013 at 7:25 AM, Daniel James
wrote: Maybe, but it would introduce concurrency issues (if two modules are pushed to in quick succession). If I get it working in a cron job, I can think about hooks later. FWIW I am using a hook to update the website.
Once you have more than one git repository (superproject and submodules), by definition, you *will* have concurrency issues no matter how you do it. It's just the size of the window of vulnerability you can try to minimize.
Guess why I'm cautious about running the script automatically. Anyway, I can linearise updates to submodules using the github events api. Which means I only have to deal with concurrent updates of the superproject which is an easier problem. What's tricky is dealing with concurrent changes to local state. There are obviously strategies to deal with that but if I can guarantee that there's a reasonable gap between each run of the script life is easier. It also means I don't have to maintain over 100 hooks.