В данной главе описывается система управления исходными кодами Visual Studio Team System: точнее говоря, сама система управления и хранилище (которое предоставляет сервер Team Foundation Server), а также средства ее интеграции с Visual Studio.
Идея системы управления исходными кодами достаточно проста: в любом проекте разработки программного обеспечения имеется необходимость в централизованном хранении и управлении файлами, которые являются базовыми элементами. Иначе говоря, система управления исходными кодами централизованно управляет доступом не только к файлам ирходного кода, но также и к любым другим элементам проекта, имеющим вид файлов и созданным во время реализации проекта. Эти элементы могут включать в себя документы технических требований, сетевые диаграммы и планы тестирования.
Примечание
Термины "система управления исходными кодами" и "система управления версиями" являются синонимами (по крайней мере, в данной книге). Несмотря на то, что термин "система управления версиями" является в некоторых отношениях предпочтительным (поскольку намекает на тот факт, что управление производится не только исходными кодами), мы в данной главе используем термин "система управления исходными кодами" для того, чтобы соответствовать основному объему документации MSDN по командным системам — и даже несмотря на то, что база данных системы управления исходными кодами (на уровне данных сервера Team Foundation Server) имеет по иронии судьбы название TfsVersionControl.
Работу системы управления исходными кодами можно ркзбить на следующие области ответственности:
□ она централизованно хранит файлы (безопасным и надежным образом);
□ она предоставляет способ группировки наборов версий файлов для составления "версии";
□ она позволяет множеству пользователей взаимодействовать одновременно с одним и тем же файлом (при помощи концепций возврата, извлечения и слияния);
□ она следит за изменениями, произведенными в файле: кто их сделал, когда они были сделаны и почему.
Система управления исходными кодами (которая поставляется вместе с сервером Team Foundation Server и Visual Studio) выполняет все эти требования (и не только эти). Это надежное клиент-серверное решение, специально предназначенное для управления исходными кодами больших команд разработчиков (на уровне предприятия).