0 3.9K

Работа с клиентом Perforce

Категории: Программирование

Оглавление:

  1. Введение
  2. Установка плагина p4vs для Visual Studio 2012-2015
  3. Описание основных команд в perforce
  4. Merge файлов

Введение 

Perforce (сокр. P4) — коммерческая система управления версиями. Доступна бесплатная лицензия для двадцати пользователей. Разработана компанией Perforce Software, основанной в 1995 году. Система имеет клиент-серверную архитектуру. Сервер Perforce может одновременно иметь несколько репозиториев, называемые «депо» (англ. depot).

Установка плагина p4vs для  Visual Studio 2012-2015

  1. Переходим в вкладку Tools > Extensions and Updates  
  2. в появившемся окне выбираем "online" и в поле поиска вводим p4vs
  3. в найденном списке находим p4vs perforce plugin for VS, обращаем внимание что бы создателем плагина был Perforce Software, inc.
  4. скачиваем плагин

установка плагина p4vs

после установки плагина перезапускаем  Visual Studio.

далее переходим в вкладку Tools > Options

там находим вкладку source control и выбираем в Current source control - p4vs

current source control plug-in

Для завершения нажимаем OK.

Описание основных команд в perforce

Название команды Описание команды
get latest revision Получить последнюю версию проекта с depot
get revision

Получить определённую версию выделенной папки

по дефолту стоит выбор отката изменений по change list, но можно выбрать по дате, по label и др.

Выбрав нужную версию нажимаем "Get Revision"

get revision perforce

Remove from Workspace Отмечает вашу папку как "удалённую" в P4V после чего вы можете удалить её из файловой системы и загрузить заново с depot если это нужно. Данная команда может пригодиться если вы допустим хотите скачать новую версию с депота, предварительно удалив старую с файловой системы, но пока вы не примените к папке в приложении P4V Remove from Workspace вы не сможете загрузить новую версию, тк перфорс будет отображать что у вас уже загружена последняя версия.
map to workspace view Изменить местоположение локальной папки workspace (туда куда будут сохраняться проекты взятые из depot )
check out Открывает файл для редактирования, будет добавлен в список изменений при сабмите
Mark for delete Отмечает файл как "удалённый" после сабмита он удалиться из depot, но в workspace он остается. Практикуется Mark for delete так же для служебных папок (папок куда компилируется ваш проект) для того что бы не хранить сбилженые системные файлы, которые постоянно меняються.
Submit Отправляет локальные изменения на сервер
revert unchanged files Снимает check out из файла или файлов если в файл не вносили изменения 
revert files Если файлы изменялись, но надо откатить изменения. Игнорируя изменения в файлах, заменяет их в workspace файлами загруженными из depot
Resolve Files Resolve Files - это так званый "merge" файлов, когда 2 человека одновременно правят один и тот же файл,возникает необходимость при сабмите их "резолвить", описание мержа файлов смотрите ниже.
Folder History Показывает историю определённой папки.
Diff Against Данная команда позволяет сравнивать между собой два файла или папки
Look Позволяет заблокировать файл для других пользователей, тем самым не разрешая вносить в него изменения, до того как вы не сделаете unlock, что бы "залочить" файл необходимо сначала его зачекаутить (checkout)
Unlock снимает lock c файла
Rollback

Rollback позволяет откатить изменения к определенному состоянию (к дате, к определенной ревизии и тд)

выберем в вкладке rollback (это можно сделать кликнув по папке проекта или на 1 из списке изменений changelist )

perforce rollback

выберите папку которую нужно откатить

и номер в changelist

rollback

Далее нажимаем "Save to changelist" и сабмитим изменения.

Merge файлов

действия для merge

  1. get latest version - берем последнюю версию файлов
  2. Resolve files - 

Есть 2 выбора для merge файлов это auto resolve multiple files и Interactively resolve files one at a time.

perforce merge

Auto resolve multiple files:

auto resolve multiple files

interactively resolve files one at a time:

interactively resolve files one at a time

Где:

  • Accept Source : Заменяет копию файла на вашем рабочем месте с версией, которая находится в депо, отбрасывая изменения.
  • Accept Target : Принимает файл, который находится в вашем рабочем пространстве, переписав версию, которая в депо при submit файла.
  • Accept Merged : Заменяет файл на вашем рабочем месте с объединенным результате двух файлов, перечисленных в поле в верхней части экрана.
  • Run Merge Tool : Открыть инструмент слияния отредактировать файл и сохранить объединенный результат

Комментарии:

Пожалуйста авторизируйтесь, чтобы получить возможность оставлять комментарии