Добрый день. Вопрос №1 Какова стоимость получения диплома о мини-МБА по данному курсу? Или ориентироваться на указанную на сайте? Вопрос №2 Возможно ли начать обучение без потери результатов, не отправив документы на зачисление, а отправку выполнить позже? |
Вопросы и ответы: система управления исходным кодом и версиями TFS
В этом разделе
Доступ к системе управления версиями
- Что такое MSSCCI Provider и когда он используется?
- Какие еще интегрированные среды разработки поддерживаются TFS?
- Когда следует использовать Team Foundation Server Power Tool?
- Каковы наиболее распространенные сценарии расширения системы управления версиями?
- Как работать с системой управления версиями из командной строки?
- Как предоставить разрешение на доступ к файлу в папке, имеющей наследуемые разрешения?
- Что делать, если разработчик покидает проект?
- Как управлять стажерами и другими разработчиками, которым я не доверяю возвращать правки на сервер?
- Как следует изменять разрешения после отправки приложения заказчику?
- Когда использовать метки?
- В чем отличие меток TFS от меток VSS?
- Что такое ветвление?
- Когда следует выполнять ветвление?
- Когда не следует выполнять ветвление?
- Как использовать ветвление для выпуска приложения?
- Как использовать ветвление для поддержки приложения?
- Как при помощи ветвления сократить количество конфликтов между командами?
- Как при помощи ветвления сократить количество конфликтов в компонентах?
- Как наиболее эффективно провести ветвление и слияние?
- В чем разница между ветвлением и метками?
- Что представляет собой модель ветвления в пространстве путей?
- Что такое модель распространения TFS?
- Как выполнить слияние двух ветвей?
- Можно ли выполнить слияние между командными проектами?
- Что такое слияние без основы?
- Что такое модель продвижения кода?
- В чем отличие между логическим и физическим представлениями ветвей?
- Как часто следует выполнять слияния?
Возврат после правки и политики возврата
- Что такое набор изменений?
- Что такое политика возврата после правки?
- Как перекрыть политику возврата?
- Как гарантировать соблюдение политики?
- Как пользоваться проверкой возврата после правки?
- Приведет ли к нарушению синхронизации переименование или удаление файлов на диске?
- Как работает система автоматического разрешения конфликтов?
- Как разрешать конфликты вручную?
- Как избежать конфликтов?
Извлечение, получение и блокировка
- Как узнать, кто изменял файл последним?
- Как работает команда get?
- В чем разница между совместным и исключающим извлечением?
- Когда следует использовать команду lock?
- Какие типы блокировок поддерживает TFS?
Распределенная и удаленная разработка
- Как работать автономно?
- Как оптимизировать среду распределенной командной разработки?
- Что такое TFS -прокси?
- Как оптимизировать производительность TFS -прокси?
Переход с других версий
- Чем система управления версиями TFS отличается от VSS?
- Чем модель извлечения TFS отличается от аналогичной модели VSS?
- Как осуществить перенос исходного кода из VSS в TFS?
- Как осуществить перенос исходного кода из других систем управления версиями?
Управление проектом и рабочей областью
- Как упорядочить командные проекты?
- Как управлять зависимостями между проектами?
- Что такое рабочая область?
- Как изолировать работу разработчика при помощи рабочей области?
- Как эффективно организовать сопоставление рабочей области?
- Когда следует создавать новый проект, а когда - новую ветвь?
- Как управлять исходным кодом, используемым в нескольких проектах?
- Как управлять двоичными файлами, используемыми в нескольких проектах?
- Как организовать дерево исходного кода?
Отложенные правки
- Что такое отложенные правки?
- Что такое набор отложенных правок?
- Как используются отложенные правки?
- Как использовать отложенные правки для архивации?
- Для чего нужно извлекать набор отложенных правок?
Доступ к системе управления версиями
- Что такое MSSCCI Provider и когда он используется?
- Какие еще интегрированные среды разработки поддерживаются TFS?
- Когда следует использовать Team Foundation Server Power Tool?
- Каковы наиболее распространенные сценарии расширения системы управления версиями?
- Как работать с системой управления версиями из командной строки?
Что такое MSSCCI Provider и когда он используется?
Поставщик интерфейса системы управления исходным кодом Microsoft® (Microsoft Source Code Control Interface, MSSCCI) используется для интегрированного управления версиями при работе с продуктами, не поддерживающими Microsoft Visual Studio® Team Explorer. Например, если вы работаете в Visual Studio 6.0, то можете использовать клиент MSSCCI или командную строку для взаимодействия с системой Microsoft Visual Studio Team System (VSTS) Team Foundation Version Control.
Ниже приведен список клиентов, способных работать напрямую с Team Foundation Version Control при помощи провайдера MSSCCI:
- Microsoft Visual Studio .NET 2003.
- Microsoft Visual C++® 6 Service Pack 6 (SP6) .
- Microsoft Visual Basic® 6.0 SP6.
- Microsoft Visual FoxPro® 9.0 SP1.
- Microsoft Access 2003 SP2.
- Microsoft SQL Server™ Management Studio.
- Sparx Systems Enterprise Architect 6.1.
- Sybase PowerBuilder 105.
- Toad for SQL Server 2.0.
Работа MSSCCI в Visual Studio 2005 имеет следующие отличия от системы Team Foundation Version Control:
- в процессе отладки выполняется операция GetLatest ;
- при извлечении файла применяется исключающая блокировка возврата после правки;
- команды Open from Source Control и Save to Source Control ведут себя так же, как и в Microsoft Visual SourceSafe®.
Дополнительные ресурсы
- Дополнительную информацию о MSSCCI вы найдете на сайте Microsoft MSDN® в статье "The Microsoft Source-Code Control Interface" по адресу http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcug98/ html/_asug_the_microsoft_source_code_control_interface.asp.
- Дополнительную информацию о провайдере MSSCCI вы найдете в статье "Update on the TFS MSSCCI Provider" по адресу http://blogs.msdn. com/bharry/archive/2006/03/24/559876.aspx.
- Надстройка MSSCCI разработана в TFS Power Tool, но официально Microsoft не поддерживается. Вы можете загрузить ее из источника, расположенного по адресу http://www.microsoft.com/downloads/details.aspx? FamilyId=87E1FFBD-A484-4C3A-8776-D560AB1E6198&displaylang=en.
Какие еще интегрированные среды разработки поддерживаются TFS?
Систему Team Foundation Server можно использовать из любой версии Visual Studio 2005, где установлен Team Explorer. Кроме того, вы вольны запускать Team Explorer параллельно с любыми другими (не Visual Studio 2005 ) интегрированными средами разработки, чтобы работать с командными проектами и управлять рабочими элементами.
Для приведенных ниже клиентов имеются интеграционные решения, поставляемые сторонними производителями:
- Eclipse ;
- клиент Linux ;
- клиент Apple Macintosh ;
- веб-клиент Hypertext Markup Language (HTML) .
Чтобы получить доступ к системе управления версиями TFS из среды разработки Eclipse, а также из клиентов Linux или Macintosh, установите пакет клиентских приложений Teamprise (http://www.teamprise.com/).
Чтобы получить доступ к системе управления версиями TFS только для чтения через Интернет, воспользуйтесь приложением Team System Web Access (http://msdn2.microsoft.com/en-us/teamsystem/bb676728.aspx).
Дополнительные ресурсы
- Дополнительную информацию об использовании Team Explorer вы найдете в статье "Working with Older Visual Studio Projects or Other Code Projects" по адресу http://msdn2.microsoft.com/en-us/library/ms242912(vs.80). aspx.
- Дополнительные сведения о Teamprise вы найдете по адресу http://www. teamprise.com.
- Дополнительные сведения о Team System Web Access вы найдете по адресу http://msdn2.microsoft.com/en-us/teamsystem/bb676728.aspx.
Когда следует использовать Team Foundation Server Power Tool?
Функциональные возможности Team Foundation Power Tool (TFPT) недоступны из пользовательского интерфейса Visual Studio 2005. Например, TFPT используется для работы в автономном режиме, а также для выполнения операций отката - отмены возврата набора изменений после правки. Инструмент TFPT может применяться для выполнения следующих операций:
- Извлечение отложенных правок Операция извлечения отложенных правок ( unshelve ), поддерживаемая TFPT, не допускает объединения отложенных и локальных правок. Допустим, вы при помощи TFPT извлекаете изменение из набора, а у соответствующего элемента локальной рабочей области имеется также и ожидающее изменение, TFPT может объединить изменения путем трехстороннего слияния, при условии что и отложенное, и ожидающее изменения являются правками кода.
- Откат Возможность отмены возврата набора изменений после правки не поддерживается TFS напрямую. Однако с помощью команды rollback инструмента TFPT вы можете попытаться отменить любые изменения из конкретного набора. Отменить можно не все изменения, но в большинстве сценариев откат работает.
- Автономная работа Онлайн-инструмент TFPT позволяет на протяжении некоторого времени работать без подключения к серверу. Он располагает функциональными возможностями, информирующими сервер об изменениях, внесенных в локальную рабочую область.
- Получение набора изменений Команда GetCS позволяет получить все объекты, включенные в набор изменений, версию которого вы указали. Это полезно, если ваш коллега вернул в систему нужное вам изменение, но вы не хотите полностью обновлять рабочую область до последней версии.
- Удаление ожидающих правок Команда UU (Undo Unchanged) удаляет ожидающие правки из файлов, которые на самом деле не редактировались. Это полезно, когда вы извлекаете для правки большое количество файлов, но реально вносите изменения только в некоторые из них. Команда UU позволяет отказаться от правки тех файлов, которые фактически не были изменены. Команда сравнивает хеш файлов из локальной рабочей области с хешем файлов, находящихся на сервере, и выясняет, был ли файл действительно изменен.
Каждая из этих команд запускается из командной строки при помощи Tftp.exe.
Дополнительные ресурсы
- Загрузить инструмент TFPT можно из источника, расположенного по адресу http://www.microsoft.com/downloads/details.aspx?FamilyID=7324c3db-658d-441b-8522-689c557d0a79&DisplayLang=en.
- Форум, посвященный обсуждению TFPT, находится по адресу http:// forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=930&SiteID=1.
Каковы наиболее распространенные сценарии расширения системы управления версиями?
Наиболее распространенный сценарий расширения функциональности системы управления исходным кодом состоит в настройке политики возврата кода после правки с целью соблюдения стандартов. Чтобы создать надстройки пользовательских политик, перечисляемые в диалоговом окне Add Checkin Policy, применяются функции расширения из комплекта Visual Studio Team Foundation Server Software Development Kit. Инструментарий TFS SDK можно загрузить по адресу http://go.microsoft.com/fwlink/?linkid= 68586.
Чтобы клиенты помимо Visual Studio 2005 могли работать с системой управления версиями Team Foundation Version Control, можно также написать интеграционный слой, хотя к этому способу прибегают нечасто.
Дополнительные ресурсы
- Подробнее о том, как настроить политику возврата после правки, читайте в статье "Walkthrough: Customizing Check-in Policies and Notes" по адресу http://msdn2.microsoft.com/en-us/library/ms181281(VS.80).aspx.
- Чтобы посмотреть пример кода, который запрещает возврат правок с определенными вариантами кодирования, читайте статью "Checkin Policy to Disallow Certain Patterns" по адресу http://blogs.msdn.com/jmanning/ar-chive/2006/02/02/523125.aspx.
- Чтобы посмотреть пример кода, который обязывает вводить комментарии при возврате после правки, читайте статью "Sample Checkin Policy: Make Sure the Comment Isn't Empty" по адресу http://blogs.msdn.com/ jmanning/archive/2006/01/21/515858.aspx.
- Чтобы узнать, как зарегистрировать новую политику возврата после правки, читайте статью "I've Made a New Check-In Policy! How Do I Add It?" по адресу http://blogs.msdn.com/jmanning/archive/2006/02/07/526778. aspx.
- Загрузить TFS SDK можно из источника, расположенного по адресу http://go.microsoft.com/fwlink/?linkid=68586.
- Дополнительную информацию о расширении Team Foundation Version Control вы найдете в статье "Walkthru: The Version Control Object Model" по адресу http://msdn2.microsoft.com/en-us/library/bb187335(VS.80).aspx.
Как работать с системой управления версиями из командной строки?
В систему Team Foundation Server включен инструмент командной строки Tf.exe, который позволяет выполнять ряд действий по управлению исходным кодом. В частности, из командной строки можно настраивать выполнение задач по расписанию при помощи планировщика задач Microsoft Windows® Task Scheduler.
Если путь и другие переменные среды заданы правильно, запускайте инструмент из окна командной строки Visual Studio 2005. Чтобы задать путь и переменные, запустите пакетный файл Vsvars32, который обычно располагается в папке Диск:\Program Files\Microsoft Visual Studio 8\Common7\ Tools. В командной строке поддерживается большинство команд системы управления исходным кодом, включая Checkin, Checkout, Get, History, Shelve, Branch, Merge, Label, Status, Undelete и Undo.
Ниже приведены наиболее распространенные операции, выполняемые из командной строки:
- Синхронизация файлов локального компьютера с файлами сервера: tf get.
- Добавление файлов на сервер: tf add.
- Извлечение файла для редактирования: tf checkout.
- Возврат ожидающих изменений: tf checkin.
- Извлечение определенного набора изменений с сервера: tf get /version. Некоторые операции можно выполнить только из командной строки:
- Удаление рабочей области другого пользователя: tf workspace /delete.
- Удаление файлов, возвращенных другим пользователем: tf undo.
- Снятие блокировки, установленной другим пользователем: tf lock.
- Определение области действия меток: tf label.
- Слияние без основы: tf merge.
Дополнительные ресурсы
- Дополнительную информацию о работе с командами Tf.exe вы найдете в статье "MSDN: Walkthrough: Working with Team Foundation Source Control from Command Line" по адресу http://msdn2.microsoft.com/en-us/ library/zthc5x3f.aspx.
- Дополнительную информацию о командах, доступных только из командной строки, вы найдете в статье "Operations Available Only From the Command-Line (Team Foundation Source Control)" по адресу http://msdn2. microsoft.com/en-us/library/ms194957(VS.80).aspx.