Hosting your code becomes an important topic as soon as you want to start sharing it – and be it only with yourself on another machine. There are basically two different flavors of code hosting: do-it-yourself and leave-me-in-peace.
Hosting a Git repository on your own server has a lot of advantages:
It saves money you’d have to spend on code hosting services.
It keeps your code in-house.
And it generally gives you all the freedom in the world.
But, of course, this also comes with some drawbacks:
YOU are responsible for ensuring high availability / up-time of the server.
YOU are responsible for making backups (that really, really work).
YOU are responsible for keeping an eye on security and software updates.
In the end, the hard part about hosting code is not the management of the Git repositories. It’s the management and maintenance of the server. Don’t get me wrong: the bottom line is NOT “stop hosting code yourself and use a code hosting service”. The bottom line is “be aware of what hosting your code yourself really means”.
If you have enough expertise doing this yourself and if you’re willing to invest the time, hosting your repositories on your own server is perfect for you!
For most people, their core competence is not server maintenance. While a lot of people theoretically have the knowledge to do it themselves, they're often not proficient enough for this to make sense.
By now, there are dozens of specialized service providers available that do all the server management, backup, and security stuff for you. We've compiled a short list of some of them to give you a quick overview.
GitLab offers a fast-evolving platform for code collaboration. The free community edition and the enterprise edition can be installed on your own servers; a hosted offering that runs on GitLab.com is also available.
Not limited to Microsoft technologies, "Visual Studio Team Services" offers an open platform for any development stack. In addition to code hosting, the platform includes its own Continuous Integration service and agile planning tools for Scrum and Kanban teams.
Plan.io offers a complete project management platform. In addition to code hosting (Git and Subversion), it also provides you with modules for task management, customer helpdesk, and even integrated Wikis.
Get our popular Git Cheat Sheet for free!
You'll find the most important commands on the front and helpful best practice tips on the back. Over 100,000 developers have downloaded it to make Git a little bit easier.
As the makers of Tower, the best Git client for Mac and Windows, we help over 100,000 users in companies like Apple, Google, Amazon, Twitter, and Ebay get the most out of Git.
Just like with Tower, our mission with this platform is to help people become better professionals.
That's why we provide our guides, videos, and cheat sheets (about version control with Git and lots of other topics) for free.