[it would be nice if you could post using plain text]
"Robert Dailey"
wrote in message news:496954360904270903ka6a2326i635b3f73df00ea8@mail.gmail.com... On Mon, Apr 27, 2009 at 10:57 AM, Noah Roberts
wrote:
You forgot a third option, split your project into numerous small libraries so that any changes require the smallest amount of rebuilding that is >>possible.
This is actually a good idea that I overlooked. Thank you. I mean, I already modularize my code fairly well, I just never had thought about only testing >components that have changed. I think such a build system might be complex to make. I'm using CMake primarily for my unit testing system. I wonder if >CMake alone is enough for this. Usually the CI testing is done on the client machine in my case, but maybe the server could do it as a post-commit?
CI should definitely always be performed at the server, in combination with running unit testing at the client. Use a decent CI server (CC, ...) to support running builds whenever the repo is updated.
These are all details that get a bit off-topic, but hopefully I can figure something out.
Run only an incremental build on the client (including incremental tests). If you are in a heavily collaborative project/environment, update from the repo and run the (incremental) tests again before actually submitting/publishing. HTH / Johan