We use
git. We have a server at one of our homes that commits get uploaded to. Actually, it broke after some tinkering. But given our small programming team, we don't work on different computers (and when we do,
sneakernet works fine).
There isn't any (as far as I know) GUI for it on windows. But the programming laptop has cygwin with git installed.