SVN не в стилі? [зачинено]


9

Минуло лише кілька років з моменту переходу з Visual Source Safe до SVN. І SVN для мене все ще своєрідний "WOW! Я можу зробити так багато речей! SVN такий класний!"

Але багато людей навколо мене продовжують говорити "SVN? Дійсно? Мех ..."

І їх так багато, що я хвилююся. Чи варто перенести свою команду на Git / Mercurial чи якусь іншу фантазію? Я знаю, що мені здається смішним, і очевидною відповіддю було б "залишатися з тим, що працює для ВАС". SVN працює для мене ... Але щоразу, коли я створюю новий проект у своєму сховищі, я постійно запитую себе - можливо, це був час переїхати?

Отже ... Чи справді SVN такий поганий? Чи пропускаю я величезну можливість, дотримуючись її?


Це може бути цікаво читати: stackoverflow.com/questions/161541/svn-vs-git
fouronnes

Ви автономний розробник?
TeaDrinkingGeek

6
Я завжди використовував GIT. Тепер мені доведеться використовувати SVN на роботі .... ... ... ... ... ... ... ... RAGE.
Іво Ветцель

@TeaDrinkingGeek: ОП каже: "Чи варто рухати свою команду ...", тому я здогадуюсь, що в ОП є більше, ніж просто (якщо ви не рахуєте команду однієї команди - але тоді її зазвичай не називають "моєю командою" ).
FrustratedWithFormsDesigner

хай вибачте, товариш, очі трохи розмиті після 12 годин на ноутбуці. :)
TeaDrinkingGeek

Відповіді:


8

Це повністю залежить від використання.

Якщо у вас є одна команда людей у ​​кімнаті, і вони там виконують більшу частину своєї роботи, якщо у вас вже є процес складання та розгортання, який вам уже подобається, і якщо ви не хочете широко ділитися своїм кодом з людьми (як ви б з проект з відкритим кодом), то не варто його потіти.

Я перейшов, можливо, рік тому з Subversion на git. Git є цілком адекватним і для цього випадку місцевого використання, але там, де він справді світить - це розподілений розвиток. Використовується локально, приємно мати github як віддалену резервну копію та гарний веб-інтерфейс до коду, і це дозволяє мені легко дозволити підрядникам брати участь. Але я не отримую багато від цього зараз, коли я не отримував від Subversion.


8

Не поводьтеся в постійному потоці скандалів. У вас є щось, що працює, продовжуйте використовувати його, поки не з’явиться вимога бізнесу, яку краще відповідати чимось іншим (ні, блискуча нова система управління джерелами або мова програмування кожні кілька місяців, коли щось "нове та вдосконалене" не скасовується, НЕ збирається щоб краще задовольнити ваші бізнес-вимоги, ніж ті, якими ви користуєтесь зараз).

Якщо SVN працює для вашої організації, то немає ніяких причин вкладати гроші / час / зусилля, необхідні для переходу на щось інше, як би багато хто цього не хотів, тому що це нове і блискуче.

І ні, це не (як вважає JBK) рішення, яке повинно залежати від "команди", це рішення, яке залежить від керівництва після консультацій з усіма зацікавленими сторонами (до складу яких принаймні входять ваші системні адміністратори). Це бізнес-рішення витрачати гроші на зміну вашої технології, а не технічне рішення.


Я б схвалив вас мільйон разів, якби міг.
HLGEM

5

Я вважаю, що ніколи не слід приймати рішення з незнання. Якщо ви не знаєте, чого вам не вистачає, вам слід спробувати git out досить довго, поки ви цього не зробите, тоді ви можете прийняти обгрунтоване рішення. Перехід до розподіленого контролю реально неможливо зрозуміти, не спробувавши його, і відпустити деякі старі звички, поки ви це робите. Більшість сил DVCS полягає в тому, що ви можете створювати стільки гілок, скільки вам потрібно, з будь-якої причини. Якщо ви спробували це протягом місяця і не створили принаймні 5 філій або близько того, ви не протестували його на власних умовах. Це помилка більшості людей, які не "отримують" git. Після цього, якщо ви повернетесь до svn, ви, принаймні, самі дізнаєтесь причини.


5
Я рішуче прихильний до прийняття більшості рішень із відносного незнання. Ви пропонуєте йому взяти місяць, щоб спробувати git. Це справжня робота. Він повинен робити це лише за наявності певних причин вірити, що це покращить його ситуацію. В іншому випадку, мабуть, є ще щось, на що він повинен витратити місяць експериментів. Наприклад, redis, mongo, rails або node.js або BDD, будь-які не менш гарячі речі.
Вільям Піетрі

Але Git - це гаряча річ. А досвід багатьох користувачів Git передбачає , що це буде зробити його становище набагато краще.
Kyralessa

3

Я не використовував Git, але використовував Mercurial, і я дійсно не бачу, у чому полягає велика справа. Дуже багато, як SVN, за винятком того, що основні речі, такі як реєстрація та оформлення замовлення, є складнішими (потрібно два кроки замість одного). Натомість, він повинен зробити багато більш досконалих речей, які мені ніколи насправді не потрібно було робити набагато простіше. Моя реакція на твердження про те, що DVCS якось по суті є вищою, є в основному "добре, звичайно, я візьму за це ваше слово", а потім продовжую продовжувати роботу з SVN, що для мене працює чудово.


Величезна угода щодо DVCS полягає в тому, що ви можете виконувати всю свою роботу в режимі офлайн. Ця одна особливість накладає вимогу, щоб у DVCS був потужний механізм злиття, який може обробляти перезавантаження та розгалуження; виду завдань, які просто неможливі з централізованим СВК. Переваги, на які заявляють люди, виходять з увімкнених робочих процесів, а не з технічної переваги. Якщо ви не використовуєте та не потребуєте такого типу робочого процесу, це теж добре.
greyfade

1
Це тому, що реєстрація та оформлення замовлення не існують у DVCS. Ви використовуєте hg як заміну SVN, а не використовуєте hg так, як його мали використовувати. Те саме стосується будь-яких DVCS.
альтернатива

@Mathepic: Ну, ви можете змінити ім'я, якщо хочете, але основна концепція передачі даних між локальною робочою копією та офіційним сховищем існує у будь-якій системі управління джерелами.
Мейсон Уілер

1
ні, це не є. У DVCS такої операції немає.
альтернатива

3
так, є - сенс центрального репо, щоб підштовхнути 'головну' версію до дуже вагомого випадку використання, або для резервного копіювання, створення сервера, управління випуском, або просто спосіб кращої координації між командами.
gbjbaanb

-2

Очевидна відповідь тут - дозволити команді вирішити і обговорити, який найкращий варіант для всіх, щоб не хтось кликав кадри у вакуумі. Можуть бути вирішені різні думки та побоювання, але я б краще запропонувати відповідь консенсусу, а не намагатися бути диктаторським щодо того, що використовувати.


3
Чи маєте ви уявлення про вартість в переході від однієї системи управління джерелом до іншої або про ризик втратити речі в процесі, якщо хтось новий в новій системі допустить помилку при перетворенні існуючого коду? Це НЕ командне рішення, це ділове рішення, і його слід приймати лише в тому випадку, якщо у вас є реальні потреби, які ваша нинішня система не може задовольнити.
HLGEM
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.