Если вы собираетесь объединяться с определенными ветвями релиза, тогда ваши функциональные ветки должны быть ветвями из ветки релиза, а не из ствола.Проще объединить с родительской ветвью, чем с не родительской ветвью.
1) Если вы действительно хотите создавать функциональные ветки, тогда у каждой ошибки будет своя ветвь.Это поможет отделить исправления ошибок от новых функций.В конце концов, это ветвь на функцию, а не ветвь на разработчика.
2) Я использовал тег Hg.Вы правы в том, что кто-то меняет перемещение тега, если он действительно этого хочет, но теги версионны, и вы можете установить хуки в главном репозитории hg, чтобы выдавать оповещения, если тег перемещен.Я действительно не буду беспокоиться о перемещении тегов, если вы не можете доверять своим разработчикам, в этом случае вы облажались.