Работа с исправлениями

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

Для того чтобы создать исправление из проекта CVS, выполните следующие действия:

  1. Выберите ресурс, содержащий изменения, которые будут включены в исправление. Можно выбирать ресурсы, хранящиеся в нескольких проектах и разных уровнях, так как мастер создания исправлений (при его запуске в режиме по умолчанию) может создавать исправления для нескольких проектов. Исправление следует устанавливать для тех же ревизий файлов, на основе которых оно было создано. Поэтому следует убедиться, что исправление применяется для того же самого среза ресурсов. Проще всего это достигается при создании исправления на основе версии.
  2. В выпадающем меню выберите Совместная работа > Создать исправление.... Откроется мастер Создать исправление.
  3. Укажите, где следует сохранить исправление:
    1. Сохранить в буфере обмена - исправление будет помещено в буфер обмена, откуда его можно будет вставить в текстовый редактор, например, в сообщение электронной почты.
    2. Сохранить в файле - исправление будет сохранено в заданном файле локальной файловой системы.
    3. Сохранить в рабочей области - исправление будет сохранено в заданном файле в одном из существующих проектов рабочей области.
    Для исправлений небольшого размера перенос исправление через буфер обмена может быть оправдан, но в большинстве случаев рекомендуется использовать локальную файловую систему.
  4. Можно предварительно просматривать и доводить вариант исправления, раскрыв дерево ресурсов в панели Изменения. В исправление будут включены только элементы, отмеченные галочкой. Для настройки создания исправления нажмите Далее.
  5. Укажите, каким образом следует настроить исправление:
    1. В формате вывода diff - Позволяет выбрать один из форматов вывода diff. Unified - это формат, применяемый во многих приложениях исправлений, включая Eclipse.
    2. Корень исправления - определяет уровень, на котором расположен корень исправления. Возможные варианты - Рабочая область, Проект и Ресурс.

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

      Исправления, имеющие корень на уровне Проекта, могут содержать ресурсы конкретного проекта и должны быть применены к тому же самому проекту.

      Исправления, имеющие корень на уровне Ресурса, применяются к тому же ресурсу.
  6. Нажмите кнопку Готово.
  7. После этого примените исправление для соответствующего проекта.

Для того чтобы установить исправление, выполните следующие действия:

  1. Выберите ресурс, для которого было создано исправление. Этот ресурс должен содержать те же самые ревизии файлов, для которых было создано исправление.
  2. В выпадающем меню выберите Совместная работа > Установить исправление.... Откроется мастер Установить исправление.
  3. Укажите, где расположено исправление:
    1. Файл - исправление хранится в файле локальной файловой системы. Введите полный путь к файлу или найдите его с помощью кнопки Обзор....
    2. Буфер обмена - исправление скопировано в буфер обмена. Предупреждение: безопаснее работать с исправлениями, хранящимися в файлах. При работе с буфером обмена могут быть ошибки, связанные с различиями в окончаниях строк, если исправление было создано на другой платформе (например, в Linux, а не в Windows).
    3. Рабочая область - исправление сохранено в рабочей области.
    Нажмите Далее, чтобы просмотреть результат установки исправления.
  4. Дополнительный шаг: этот шаг выполняется только для исправлений, имеющих корень на уровне проекта или ресурса. Для исправлений, имеющих корень на уровне рабочей области, будет автоматически открыта страница предварительного просмотра исправления. На странице указания места назначения исправления необходимо выбрать ресурс, который будет корнем исправления.
  5. На странице предварительного просмотра исправления показано, было ли исправление успешно установлено для файлов в рабочей области. Верхняя панель содержит список изменений, содержащихся в исправлении. При выборе элемента в дереве в нижней части окна будет показаны часть файла исправления (называющаяся 'кусок' или 'hunk' в терминологии утилиты patch). Эту часть можно будет просмотреть. Примечание: В нижней части окна не показано, как будут выглядеть ресурсы рабочей области после наложения куска исправления. Показано только содержимое файла исправления.
    1. Помеченный галочкой элемент указывает, что исправление или его кусок могут быть успешно применены к ресурсу рабочей области. Можно отменить применение исправления или его отдельных кусков, отменяя их выбор.
    2. Красный восклицательный знак указывает на неполадку с исправлением или куском.
      Это имеет место, если исправление повреждено или было создано с ревизиями файлов, отличающихся от тех, для которых оно устанавливается.
      В скобках приводится объяснение причины сбоя.

      Для того чтобы установить исправление полностью и корректно, необходимо устранить неполадки (красные восклицательные знаки), чтобы все элементы были помечены галочкой. Для этого настройте параметры мастера, как описано ниже в разделе Опции.

  6. Если все выполнено успешно, нажмите Готово, чтобы установить исправление. Теперь рабочая область будет содержать исходящие изменения для каждого файла, затронутого исправлением.

Опции для установки исправления

Следующие опции служат для того, чтобы можно было успешно установить файл исправления:
  1. Вернитесь на первую страницу мастера Установить исправление и выберите именно те ресурсы, для которых был создан этот файл исправления.
  2. Если общая часть пути к файлам исправления не соответствует путям в рабочей области, выберите 'Без учета начального пути'.
  3. Опция 'Без учета пробелов' позволяет игнорировать различия в пробелах между файлом исправления и файлами рабочей области.
  4. Измените 'Коэффициент неточного соответствия' (терминология patch). Этот коэффициент определяет, сколько строк будет проигнорировано сверху и снизу контекста при поиске соответствия. По умолчанию значение коэффициента - два.
  5. Параметр 'Отменить исправление' служит для удаления исправления, которое было применено для файлов рабочей области. Так можно отменить исправление или установить его повторно.
  6. Используйте 'Перенаправить исправление', чтобы применить изменение к другому проекту в рабочей области (для изменений на уровне рабочей области). Для этого выберите проект в верхней панели и нажмите кнопку 'Перенаправить исправление'. Откроется окно со списком доступных проектов в рабочей области. Для применения исправления к проекту выберите проект и нажмите OK.

Связанные концепции
Коллективное программирование с помощью CVS

Связанные задачи
Сравнение ресурсов

Связанные справочники
CVS