Моя команда только начинает с Mercurial и центрального репозитория. У нас есть Хадсон, создающий кончик "дефолтной" ветки, которая в основном является нашей основной линией. У нас была политика регистрации с нашим старым VCS, что проверка кода, тестирование и т.д. Должны быть выполнены до регистрации на главной линии.
Итак, скажем, вы работаете над функцией X. Вы работаете над некоторыми вещами, основываясь на "умолчанию", а затем фиксируете частичную функцию в качестве контрольной точки. Локально ваш "по умолчанию" теперь сломан - вы еще не поделились им ни с кем, но если бы вы сделали толчок, теперь у вас сломанный код в mainline.
Даже если вы ждете, пока не будете все разобраны, кажется, что есть ситуации (например, работа над двумя вещами одновременно), где вам нужно будет внести некоторые изменения, но не все.
Кроме того, если вы проверите все изменения вашей контрольной точки, тогда будут внесены некоторые изменения в mainline, которые строятся, и другие в mainline, которые не строятся.
Мы начали использовать именованные ветки - но чем больше я читаю, тем больше я думаю, что мы неправильно используем названные ветки.
Любые предложения по настройке хорошего рабочего процесса, который позволяет нам запускать Hudson и поддерживать нашу основную политику?