Прочитавши, що я підривник Subversion, чому я повинен вважати чи не вважати Mercurial або Git чи будь-який інший DVCS .
У мене є пов'язане з цим питання. Я читаю це запитання і читаю рекомендовані посилання та відео, і бачу переваги, але не бачу, як говорять про загальну зміну розуму.
Наша команда складається з 8-10 розробників, які працюють над однією великою базою кодів, що складається з 60 проектів. Ми використовуємо Subversion і маємо основний магістраль. Коли розробник запускає новий випадок Fogbugz, він створює svn гілку, виконує роботу над гілкою і коли вони закінчуються, вони зливаються назад до магістралі. Іноді вони можуть залишатися на гілці тривалий час і зливати стовбур із гілкою, щоб отримати зміни.
Коли я спостерігав, як Лінус говорив про те, що люди створюють філію і ніколи більше не роблять цього, це зовсім не ми. Ми створюємо, мабуть, 50-100 відділень на тиждень без випусків. Найбільший виклик - це злиття, але ми також дуже добре в цьому. Я, як правило, зливається у випадку fogbugz & checkin, а не по всьому корінню гілки.
Ми ніколи не працюємо віддалено і ніколи не робимо гілок з гілок. Якщо ви єдиний, хто працює в цьому розділі бази коду, то злиття в магістраль проходить безперебійно. Якщо хтось інший змінив той самий розділ коду, то злиття може стати безладним, і вам може знадобитися зробити деяку операцію. Конфлікти - це конфлікти, я не бачу, як будь-яка система могла б виправити це більшу частину часу, якщо тільки не була достатньо розумною, щоб зрозуміти код.
Після створення гілки наступний замовлення файлів 60k + займає деякий час, але це може бути проблемою з будь-якою системою управління джерелами, яку ми б використовували.
Чи є якась користь від DVCS, яку ми не бачимо, що може нам дуже допомогти?