(Concurrent VS)

In practice, it's very rare that 2 developers who work on different problems produce conflicts. And those conflicts are easily resolved when developers talk to each other.

A really serious problem arises when you do major refactoring. Well, for those case one may want to lock the tree, after all.