Обычно мы использовали Perforce и SmartBear's Code Collaborator, Big Corp
и теперь мы также собираемся использовать Mercurial для определенных проектов.
Code Collaborator поддерживает Mercurial (мы используем версию 5), и я пытаюсь определить, когда лучшее время (во время фиксации / отправки на сервер) процесс является наилучшим / эффективным временем для проверки кода
Благодарность
code-reviews
mercurial
cbrulak
источник
источник
Ответы:
На самом деле, мы недавно прошли почти то же самое в моей компании. Вот что мы сделали:
Мы храним центральную окончательную копию всех наших репозиториев на одном сервере. Когда разработчики хотят «проверить» код, они идут на этот сервер и клонируют из репозиториев там. Аналогичным образом, когда цикл разработки завершен, код также помещается в соответствующий репозиторий.
Мы отделяем стабильные репозитории от репозиториев разработки . Мы требуем, чтобы код был проверен, прежде чем он будет помещен в стабильный репозиторий. (Это важно, потому что мы также требуем, чтобы наши стабильные репозитории содержали код, который в настоящее время запущен в производство, отличающийся только ожидающими продвижения кода.)
Для обеспечения проверки кода мы написали
pretxnchangegroup
хук (задокументировано в HG Book ). Мы используем тот факт, что когда этот хук запускается, он может видеть репозиторий, как будто изменения в коде были постоянными, но также дает нам возможность предотвратить толчок. В основном, процесс выглядит следующим образом:По сути, это предоставляет разработчику довольно упрощенный процесс (все, что им нужно сделать, это нажать hg) и полностью автоматизирует создание обзора кода (и загрузку дополнительных измененных файлов в обзор), обеспечивая при этом проверку всего кода. ,
Примечание. Это довольно простой процесс (и относительно новый для нас), поэтому он может работать не для всех, и могут быть некоторые ошибки проектирования, с которыми мы еще не сталкивались. Но до сих пор это работало довольно хорошо.
источник
Это зависит от того, как у вас есть структура вашего хранилища и чего вы пытаетесь достичь. Мы предпочитаем делать предварительные проверки, которые в мире DVCS действительно означают предварительные проверки. DVCS лучше в этой среде (по сравнению с традиционными SCM), потому что они имеют встроенную функциональность для сохранения ваших локальных изменений и возврата вашего рабочего пространства, чтобы вы могли работать над чем-то другим.
Если вы хотите делать обзоры после отправки, идеальный рабочий процесс сильно зависит от структуры вашего хранилища. Например, давайте предположим, что структура репозитория выглядит так, как описано в этой статье о макетах репозитория Git . В этом случае вы можете просмотреть изменения, которые объединяются в
develop
. Отдельные коммиты в функциональных ветках могут не иметь смысла просматривать. Очевидно, что всеhotfixes
также должны быть рассмотрены вместе с объединением вmaster
.Если вместо этого у вас есть одна ветвь интеграции, в которой люди регистрируются напрямую, вы можете просмотреть все изменения в этой ветке. Это, вероятно, немного менее эффективно, но все еще может работать. В этой среде вам необходимо убедиться, что все внесенные изменения были рассмотрены перед выпуском релиза. Это может быть сложнее.
Что касается б), единственное, что я хотел бы предложить, - это напрямую связаться со службой поддержки SmartBear (support@smartbear.com). Мы (да, я работаю на SmartBear) будем рады помочь вам решить ваши проблемы с путями, но в этом вопросе недостаточно информации, чтобы решить вашу проблему. Обычный процесс - просто запустить установщик, и все работает. Очевидно, что-то пошло не так в этом процессе.
источник