У меня есть проект с открытым исходным кодом, размещенный на Google Code с использованием Mercurial. У меня он отлично работает, я вообще люблю ртуть.
У меня есть несколько членов сообщества, которые клонируют мой проект, вносят изменения в свой клон и периодически присылают мне патчи. У этих участников нет доступа для фиксации к главному репозиторию, также известному как «Fork + Pull» модель.
На самом деле мы не нашли для них удобного способа присылать мне пожертвования. Если они предусмотрительно поместят все свои изменения для данной функции в именованную ветвь своего клона, мне будет легко перенести только эти изменения в мастер. Однако они часто не имеют такого предвидения, поскольку многие из этих изменений начинаются с локального вмешательства в их ветку по умолчанию.
Другой альтернативой является рассылка различий с использованием hg export
и hg import
, но это похоже на 1974 год.
Возможно, ответ может быть где-то в ртутных очередях, но это всегда казалось функцией, ориентированной на «опытных пользователей», и многие из моих разработчиков могут быть экспертами в git, но полными нюансами, когда дело доходит до hg. Мы все еще пытаемся объединить безымянные ветви, я не хочу поощрять их экспериментировать с чем-то, что еще больше усложняет ментальную модель, особенно когда я так мало знаю об этом предмете.
Я чувствую, что, должно быть, ошибаюсь. Кажется, у Github есть хорошая история для этого с его концепцией запросов на вытягивание. Как лучше всего принимать взносы от членов сообщества при использовании mercurial в коде Google?
hg pull -b branch-name http://the-clone-repo
в свое репо, чтобы получить все их коммиты для этой функции. - person emmby   schedule 13.06.2011