2013-05-24 6 views
0

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

  • Я использую Mercurial для совместного использования кода и контроля версий
  • Несколько пользователи будут делиться/модифицировать выполнение pull/push из/в центральный репо через ssh

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

У меня есть идеи, но я хотел бы знать, какие рекомендации в этом случае.

(Может быть сырыми тяни/толкай в отрасли и другой отрасли, что я управлять в одиночку ... но не выглядит хорошо, если несколько пользователей могут принимать нажим других)

(Может быть, есть простое решение, и я я усложняя зря)

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

Я прочитал материал о HG-обзоре, но я» m не уверен, что он может делать то, что я ищу.

Любое предложение?

Большое спасибо,

Adrien.

ответ

0

Что бы я хотел сейчас, это иметь в виду контроль над нажатием других пользователей, например функцию «разрешить толчок», если я принимаю изменения.

Как вы узнаете, принимать ли изменения? Единственный практический способ просмотреть изменения - это как-то попасть в ваш (личный) репозиторий.

Если ваши коллеги-участники являются доверенными членами команды, вы можете поручить им развить и раздвинуть ветки; только вам разрешено объединять свои вклады в филиал default (или в любую ветку, которую вы делегируете как «чистую»).

Более надежной альтернативой может быть наличие двух центральных репозиториев, которые позволяют отталкивать от всех и второго, которые вы можете только нажать: Пользователи нажимают на repo1; вы просмотрите и нажмите до repo2, если необходимо; пользователи тянут от repo2. Mercurial делает это легко, позволяя вам определять отдельные пути default-push и default (которые тогда будут использоваться только для вытягивания).

Третий способ состоит в том, чтобы вытащить из участников, а не позволить им толкнуть, как предлагает @ Стефен. Вот как работают хранилища, размещенные на bitbucket, поэтому вы можете рассмотреть возможность размещения своего проекта там, если эта модель понравится вам.

+0

Привет, ваше решение 2 именно то, что пришло мне в голову прошлой ночью! Я рад видеть, что это не звучит глупо. Спасибо за ваш ответ, было очень полезно. –

1

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

Вы также можете написать крючок, чтобы предотвратить нажатие. Однако для принятия/отклонения толка должна быть какая-то логика программирования, и это может быть нереалистично. Взгляните на http://hgbook.red-bean.com/read/handling-repository-events-with-hooks.html, чтобы получить подробную информацию о крючках.

+0

спасибо большое, я посмотрю –

Смежные вопросы