Как лучше всего настроить Mercurial в статическом представлении Clearcase? (Настроить крючки "оформить заказ"?) - PullRequest
2 голосов
/ 27 февраля 2010

Я бы хотел установить хранилище Mercurial в директории статического просмотра в чистом виде. Я планирую клонировать из этого каталога, выполнить всю мою реальную работу в ртутном репозитории, а затем перенести мои изменения обратно в общий каталог Hg / Clearcase.

Я хотел бы услышать общие предложения о том, как это может работать лучше всего, но я предвижу одну конкретную проблему: Clearcase блокирует файлы только для чтения, пока они не будут извлечены. То, как я хотел бы, чтобы это работало, - это установить ртутный хук для извлечения файла до его завершения и откатить толчок, если проверка не работает.

Должен ли я смотреть на крючок pretxncommit? Или тянущий крюк? Кроме того, я не совсем понимаю, как писать настоящие хуки. Я знаю команду clearcase, но я не уверен, как создать хук для передачи имени файла для каждого файла в наборе изменений.

Предложения

1 Ответ

2 голосов
/ 27 февраля 2010

На вопрос, на который я только что ответил 2 дня назад: Как связать git с ClearCase? может дать вам иллюстрацию процесса.

Мне нравится выполнять этап проверки / регистрации ClearCase отдельно от работы DVCS:
Я буду разблокировать файлы по мере необходимости в репозитории DVCS (сделал непосредственно в представлении снимка), а затем обновлю представление снимка, которое сообщит мне о «угнанных» файлах (которые я могу легко проверить и регистрация через графический интерфейс обновления cleartool).

Но если у вас есть клонирование вашего репозитория DVCS в другом месте, и вы отправляете его обратно в локальное репо, которое не является представлением снимка экрана ClearCase, вы можете просто скопировать обратно скрытый файл view.dat вашего представления снимка в корневой каталог репозитория DVCS.
Этого простого файла достаточно, чтобы преобразовать локальное хранилище в виде снэпшота ClearCase!
Затем вы делаете все файлы доступными только для чтения (кроме тех, которые были изменены после определенной даты, то есть времени, когда вы начали работать), чтобы избежать ClearCase, считая все файлы угнанными.
Остальное аналогично первому подходу: обновление, оформление заказа / регистрация.

...