For C2:
I'm more of a dropbox + Google drive guy personnally, but mostly the event code itself should contain every information so only one person work at the same time on something, I'll admit that I didn't yet really worked at the same exact time with someone on the code (too much afraid of version conflict for that), That is why I suggest to do a local version of the file that you work on, with every change highlighted/written, so you can apply them in the final file at the end.
Also I like to work in a "blocky" way: I mean that each part of my code is potentially an independent block that can be fully modified without perturbing other parts.