Brian Harry goes through some great detail about the new integration of Git repositories into the Team Foundation Service as well as Team Foundation Server 2013. There are quite a few interesting points he makes that are particularly important to enterprise and generally for teams who care about having a solid hosting of their Git repos:
Ease of installation – We’ve now made installing Git a seamless part
of installing TFS. There’s nothing to go and track down and download.
Nothing to install and configure separately. You just install TFS 2013
and automatically get Git support.
Support and servicing – Because we are shipping it, we support it.
This means if you have any problem, you can contact our support and
get help. You will receive security updates, hot fixes, regular
Updates and more all the same way you are used to getting them. We’ll
work hard to make sure your TFS Server is healthy and up to date
regardless of which features you are using.
High availability – Since early on, we’ve worked to make TFS support
high availability. Our Git support is no exception – we support all
the same things you are used to with TFS – load balancing and
clustering to ensure that your server will continue to run in spite of
hardware and software failures, Geo-replication if you need to be
certain that you maintain business continuity even in the face of
regional outages, online backup and restore as an integrated part of
TFS so that your existing enterprise grade backup and restore policies
(full, incremental and transaction log) will continue to work (giving
you good RTO and RPO).
Scale – Like with TFS, you can scale your TFS installation seamlessly
as your needs grow. This includes scaling out both the application
tier and the storage tier as you need to add additional capacity.
Ease of management – Our Git implementation is fully integrated in to
TFS so that all of your management policies can continue unchanged –
service account management, hardware migration, software patching,
backup & restore, monitoring, permission management and more.
Integrated Authentication – Our Git support fully integrates Windows
Active Directory authentication so that all of your access control,
auditing, etc can be done against a consistent and manageable
infrastructure. As part of this, all changes are audited against an
authorized identity assuring you know who made each change.
Enhanced permissions – We’ve built (and are building) a bunch of
additional repository and permission management capabilities that
allow administrators to “control the chaos”. The first set include the
ability to manage repositories (create, delete, rename, etc) and
repository level permissions that control Read, Write and Administer
permissions. We also include a 4th permission that addresses a key
issue many customers have had with Git – “Force push”, which
effectively enables users to “alter history”. While we enable this
ability, we also enable administrators to disable it with a
permission. We are also working on additional permissions now – like
branch level permissions that will enable administrators to control
who can create, delete and use individual branches. In this way,
developers can use branching any way they choose locally but, when
they are going to push back to the master repo, they are constrained
by policies the administrator configures.
ALM integration – And, of course, we are fully integrating Git into
the TFS ALM workflows – work item tracking, build automation,
reporting, code review, and more. Not all of that integration is
complete yet but we’ll be fleshing it out through the 2013 Updates
and, when we are done, we should have full parity on ALM integration
capabilities between Team Foundation Version Control and Git Version
Control.
Localization – Like the rest of our product, our Git capabilities will
be localized into the same languages as the rest of VS making it more
approachable by parts of the non-English speaking world.