У меня есть проект с открытым исходным кодом, размещенный в Google Code, с использованием Mercurial. Он отлично работает для меня, я вообще люблю меркурий.
У меня есть несколько членов сообщества, которые клонируют мой проект, вносят изменения в их клон и периодически любят присылать мне патчи. Эти участники не имеют доступа к основному репозиторию, акао "Fork + Pull" .
Мы действительно не нашли для них хорошего способа отправить мне свои взносы. Если у них есть предусмотрительность, чтобы поместить все свои изменения для данной функции на именованную ветвь в их клоне, мне легко просто вытащить эти изменения в мастер. Тем не менее, у них часто нет такого предусмотрительности, поскольку многие из этих изменений начинаются как локальное вмешательство в свою ветку по умолчанию.
Другой альтернативой является отправка по электронной почте diffs с помощью hg export
и hg import
, но это похоже на 1974 год.
Возможно, ответ может быть где-то в меркуриальных очередях, но это всегда казалось особенностью, ориентированной на "опытных пользователей", и многие из моих разработчиков могут быть экспертами с git, но являются полными n00bs, когда дело доходит до hg, Мы по-прежнему пытаемся объединить неназванную ветвь, я не хочу поощрять их играть с чем-то, что еще более усложняет ментальную модель, особенно когда я так мало знаю об этом.
Я чувствую, что, должно быть, я ошибаюсь. Гитуб, похоже, имеет хорошую историю для этого с его концепцией запросов на тяну. Какой лучший способ принять участие членов сообщества при использовании mercurial в коде Google?