Don’t break the tree

The benefit of working copies is mostly lost if the contents of the repository become “broken”.  At all times, the contents of the repository should be in a state which allows everyone on the team to continue working.   If a developer checks in some code which won’t build or won’t pass the test suite, the entire team grinds to a halt.

Many teams have some sort of a social penalty which is applied to developers who break the tree.  I’m not talking about anything severe, just a little incentive to remind them to be careful.  For example, require the guilty party to put a dollar in a glass jar.  (Use the money to take the team to go see a movie after the product is shipped.)  Another idea is to require the guilty individual to make the coffee every morning.  The point is to make the developer feel somewhat embarrassed, but not punished.

Anyway, your central repository is a place you share with the others on your team. Respect them by being careful about what you push there. At a minimum, make sure that stuff builds on your machine before you commit and push. If you have an automated test suite, run it and make sure you didn’t break anything.