Usually if you get Mac updates, those updates come straight from Apple’s servers. If you have the caching service enabled on OS X Server, the updates will cache there every time a new one is requested from a client, and then future clients requesting the same update will download from the caching service instead of from Apple’s servers directly.
Reposado allows you to, in addition to caching updates, create “branches” for testing and production (and development, if you want to make the distinctions that fine) so you can test updates before making them available to all your Mac clients. Keep in mind, though, Reposado works for Mac clients. It does not, unlike OS X Server’s caching service, cache iOS updates or purchases.
Lots of good documentation on how to install and use Reposado already exists, so I won’t rehash all that.
The only thing I couldn’t find in the default functionality was some kind of auto-promotion from a testing to a production branch, so I wrote one: ReposadoAutopromote. After a few days (number of your choosing), anything in the testing branch will automatically move up to the production branch (name of the branches also your choosing). This gives you some time to test updates before rolling them out to clients, but then you don’t have to examine each and every individual update and move them all over—you get some time to get a troublesome update out of testing before the auto-promotion happens.