Спонсор: Microsoft
Опубликован: 25.03.2010 | Доступ: свободный | Студентов: 814 / 26 | Оценка: 4.43 / 3.71 | Длительность: 10:46:00
Дополнительный материал 1:

Руководства

< Лекция 18 || Дополнительный материал 1: 12345678910111213 || Дополнительный материал 2 >

Руководство по управлению исходным кодом

В этом разделе

Доступ к системе управления версиями

  • Инструменты командной строки.
  • Team Foundation Power Tools: восстановление отложенных изменений.
  • Team Foundation Power Tools: откат изменения.
  • Team Foundation Power Tools: автономная работа.
  • Team Foundation Power Tools: получение набора изменений.
  • Team Foundation Power Tools: удаление невозвращенных правок.

Администрирование

  • Отключайте наследуемые разрешения в ветвях сопровождения.
  • Запрещайте возврат после правки разработчикам, которым пока не доверяете.

Ветвление, метки, слияние

  • Используйте метки для выделения сборок, к которым можете вернуться впоследствии.
  • Используйте ветвление для изоляции выпусков.
  • Планируйте структуру ветвей в соответствии с путями слияний.
  • Выполняйте ветвление на высоком уровне, включая файлы конфигурации и исходного кода.
  • Избегайте глубокого ветвления.
  • Избегайте ветвления без необходимости.
  • Избегайте слияния без основы.
  • Предпочитайте полное слияние выборочному.
  • Чаще выполняйте слияния.
  • Всегда создавайте папку верхнего уровня для нового командного проекта.
  • Используйте перед слиянием параметры Candidate или Preview.
  • Если в составе слияния выполняется переименование, обращайте внимание на предлагаемый системой путь.
  • Соблюдайте осторожность при разрешении конфликтов слияния.
  • Не возвращайте результаты двух и более слияний одновременно.
  • Проводите тесты после слияния, но перед возвратом.

Возврат после правки и политики возврата

  • Возвращайте код, только убедившись в его надежности.
  • Используйте наборы отложенных правок для архивации или совместного использования незавершенных изменений.
  • Разрешайте только один рабочий элемент за один возврат.
  • Применяйте политики возврата для соблюдения стандартов программирования.
  • Применяйте политики возврата для проверки качества кода.
  • Следите за перекрытием политики.
  • Избегайте конфликтов при помощи планирования.

Получение и блокировка кода

  • Перед внесением изменений извлеките последнюю версию исходного кода.
  • Осмотрительно пользуйтесь командой lock.
  • Предупредите коллег о блокировке файла.

Зависимости

  • Старайтесь использовать ссылки на проект.
  • Без необходимости не используйте файловые ссылки.
  • Для ссылок на проект и файл используйте параметр copy local = true.
  • В ссылках на веб-службы используйте динамические URL.

Распределенная и удаленная разработка

  • Убедитесь, что объема диска достаточно для реализации прокси.
  • Создайте задание для получения последних файлов по расписанию.
  • Регулярно проверяйте счетчики производительности прокси и журнал событий.
  • Настраивайте executionTimeout соответственно размеру файла и ширине канала.
  • Отключайте прокси, если он не будет работать продолжительное время.
  • Скрывайте рабочие области, чтобы избежать ненужного перемещения файлов.

Переход из других версий

  • Переходите на Team Foundation Server Source Control при помощи VSS Converter.
  • Переходите на Team Foundation Server Source Control из других систем управления исходным кодом.

Управление проектами и рабочими областями

  • Для изоляции одного разработчика используйте рабочие области, а не ветвление.
  • Удаляйте и переименовывайте файлы в системе управления исходным кодом, а не в проводнике Windows.
  • Удаляйте и переименовывайте файлы только при открытом решении.
  • Создавайте один командный проект на приложение, если хотите переносить ресурсы от версии к версии.
  • Создавайте командный проект для каждой версии, если хотите с каждой новой версией начинать все заново.
  • Используйте ветвление для обеспечения совместного доступа к исходному коду и двоичным файлам.
  • Не используйте сопоставление для поддержки зависимостей между различными проектами.
  • Сопоставляйте рабочие области на корневом уровне командного проекта.
  • Используйте уникальный путь к локальной папке на общих компьютерах.
  • Сопоставляйте только части дерева исходного кода.
  • Структурируйте дерево исходного кода с учетом ветвления.

Отложенные правки

  • Используйте отложенные правки для предоставления общего доступа к незавершенным изменениям.
  • Используйте отложенные правки для архивации незавершенных изменений на сервере.
  • Используйте отложенные правки, если вас прервали для выполнения более важного задания.

Доступ к системе управления версиями

  • Инструменты командной строки.
  • Team Foundation Power Tools: восстановление отложенных изменений.
  • Team Foundation Power Tools: откат изменения.
  • Team Foundation Power Tools: автономная работа.
  • Team Foundation Power Tools: получение набора изменений.
  • Team Foundation Power Tools: удаление невозвращенных правок.
Инструменты командной строки

Для операций, не предусмотренных пользовательским интерфейсом Visual Studio, а также для задач, выполняемых по расписанию, удобны инструменты командной строки, например, Team Foundation Power Tools ( Tfpt.exe ), которые включены в комплект Team Foundation Server (TFS) , но загружаются отдельно. С их помощью вы можете настраивать выполнение задач по расписанию, используя планировщик заданий Windows (Task Scheduler) .

Чтобы с гарантией задать нужные пути и другие переменные окружения, запускайте Tf.exe из окна командной строки Visual Studio или выполните пакетный файл Vsvars32, который обычно располагается в папке Диск:\ Program Files\Microsoft Visual Studio 8\Common7\Tools. Инструмент Tf.exe поддерживает большинство команд системы управления исходным кодом, включая Checkin, Checkout, Get, History, Shelve, Branch, Merge, Label, Status, Undelete и Undo.

Ниже указаны наиболее распространенные операции, выполняемые из командной строки с помощью Tf.exe:

  • Синхронизация файлов локального компьютера с файлами сервера: tf get.
  • Добавление файлов на сервер: tf add.
  • Извлечение файла для редактирования: tf checkout.
  • Возврат правки: tf checkin.

Извлечение определенного набора изменений с сервера: tf get /version. Некоторые операции можно выполнить только из командной строки:

  • Удаление рабочей области другого пользователя: tf workspace /delete.
  • Удаление правок другого пользователя: tf undo.
  • Снятие блокировки, установленной другим пользователем: tf lock.
  • Определение области действия меток: tf label.
  • Слияние без основы: tf merge.

Дополнительные ресурсы

Team Foundation Power Tools: восстановление отложенных изменений

Инструментарий Team Foundation Power Tools (TFPT) обладает функциональными возможностями, недоступными в Visual Studio. Например, он поддерживает работу в автономном режиме, позволяет отменять возвращенные правки из набора изменений, а также восстановить отложенные изменения.

Операция возврата отложенных изменений ( unshelve ), поддерживаемая TFS, не допускает слияния отложенных изменений ( shelved change ) и локальных изменений ( local change ). Если в элемент локальной рабочей области внесено незафиксированное изменение-правка и кроме того с ним связано отложенное изменение-правка, TFPT позволяет выполнить трехстороннее слияние изменений.

Эта команда запускается из командной строки при помощи Tfpt.exe.

Дополнительные ресурсы

Team Foundation Power Tools: откат изменения

Вообще, система TFS напрямую не позволяет отменить возврат набора изменений, но вы можете попытаться отменить любые изменения, сделанные в конкретном наборе, при помощи команды rollback. Отменить удастся не все изменения, но в большинстве сценариев команда rollback работает. Эта команда запускается из командной строки при помощи Tfpt.exe.

Дополнительные ресурсы

Team Foundation Power Tools: автономная работа

В целом, автономный режим в TFS не поддерживается. Чтобы работать автономно, выполните описанные ниже действия в строго заданной последовательности:

  1. Вручную снимите флаги "только для чтения".
  2. Отредактируйте файлы.
  3. Добавьте или удалите файлы.
  4. Запустите команду TFPT online.

Далее приводится подробное описание каждого из этих шагов.

Важно! Во время автономной работы нельзя переименовывать файлы.

  1. Вручную снимите флаги "только для чтения".

    По умолчанию, все файлы, извлеченные для правки, доступны только для чтения. При отсутствии подключения к серверу вы должны вручную снять флажки "только для чтения" с файлов, прежде чем редактировать или удалять их. Щелкните файл правой кнопкой в окне проводника Windows, выберите команду Свойства (Properties) , сбросьте флажок Только чтение (Read-only) и щелкните OK. То же действие можно выполнить с помощью команды DOS attrib -r.

  2. Отредактируйте файлы.

    Теперь вы можете редактировать любые файлы, с которых сняли метку "только для чтения".

  3. Добавьте или удалите файлы.

    Вы можете добавлять или удалять файлы, с которых сняли метку "только для чтения". Не переименовывайте файлы, поскольку инструмент TFTP online не в состоянии отличить переименование от удаления старого файла и добавления нового.

    Примечание Выявление удаленных файлов - процедура, требующая довольно много времени, поэтому на необходимость ее выполнения в команде TFPT online указывает специальный параметр, который нужно задавать вручную.

  4. Запустите команду TFPT online.

    Вернувшись в оперативный режим, введите в командной строке TFTP online. Эта команда проверит рабочую область на предмет наличия записываемых файлов и установит, какие изменения следует отправить на сервер. Если вы удалили какие-либо файлы, задайте в команде параметр /delete, чтобы команда зафиксировала их. Затем инструмент отобразит окно, в котором можно выбрать изменения для переноса в рабочую область.

Дополнительные ресурсы

Team Foundation Power Tools: получение набора изменений

Команда TFPT GetCS позволяет получить список всех элементов, содержащихся в наборе изменений на момент его создания. Это полезно, например, если вы хотите получить изменение, возвращенное вашим коллегой, но не можете обновить до последней версии всю рабочую область.

Эта команда запускается из командной строки при помощи Tfpt.exe.

Дополнительные ресурсы

Team Foundation Power Tools: удаление невозвращенных правок

Используйте инструмент TFPT, чтобы удалить из файлов невозвращенные правки. Команда TFPT Undo Unchanged удаляет невозвращенные правки из файлов, редактирование которых не было выполнено. Это полезно, когда вы извлекаете для редактирования большое количество файлов, но реально изменяете лишь некоторые из них. Вы можете отменить правки в неизмененных файлах, запустив инструмент TFPT UU. Он сравнивает хеши файлов в локальной рабочей области с хешами на сервере, что позволяет установить, был ли файл на самом деле изменен.

Эта команда запускается из командной строки при помощи Tfpt.exe.

Дополнительные ресурсы

< Лекция 18 || Дополнительный материал 1: 12345678910111213 || Дополнительный материал 2 >
Александр Будник
Александр Будник
Израиль, Иерусалим
Pavel Pelevin
Pavel Pelevin
Украина, Одесса