I recently ran across gource, which shows the development of a project over time by looking at the commits in a version control system. I pointed it at our CVS server, and this is what it spit out: http://www.youtube.com/watch?v=ct1tIoLJPjs
I thought it was interesting that the programming activity hit the high point around week 6, and stayed strong all the way to the championship.
We typically tried to avoid merging. We tried to work on different parts of the code, so that people wouldn’t have to merge. There were times where someone delayed implementing a change until someone else had finished with that VI. When we failed to communicate and ended up needing to merge, we used the LabVIEW merge tool, which most of the time worked fine.
One thing we noticed is there are times when there were unexplained changes (someone didn’t explicitly change a VI, but it changed anyway). We were able to minimize these by turning on the separate compiled code from VIs. We also made each global variable its own VI, because we found that changing anything in the global variable VI made LabVIEW recompile every VI that uses that global variable VI).
If that was our screen, it would have been completely black until the day of our first regional. Our code just didn’t work (for reasons unknown) when we switched cRIOs (from practice to comp bot) plus we (stupidly) forgot joysticks and had to buy new ones (different). Our lead programmer was up all night Thursday and we played the 1st match Fri without a hitch