On the other hand, without signing over your rights, you can effectively hold up a project from moving forward. For example, if a project wanted to move from GPLv2 to GPLv3, IIRC, you can't do that without the permission of all contributors unless they have signed over their rights. And as @trestletech has pointed out not all contributors are created equal[1].
One the one hand, you have people making significant contributions (and you don't want to just stomp all over them), on the other hand you could have people making tiny contributions, yet are holding up everyone else.
[1]: https://github.com/datastax/nodejs-driver/commit/6f3c6b2f454...