I personally just use git, there's even a plugin that automates pushing and pulling changes. Does that not cover your use case?