Как зайти в Даркнет?!
25th January, 01:11
5
0
Как в tkinter из поля ввода Entry получить значение в одну переменную и обновить строку кнопкой, затем получить ещё одно введённое значение и затем сложить их. Ниже пример кода
21st July, 19:00
893
0
Программа, которая создает фейковые сервера в поиске игровых серверов CS 1.6 Steam
21st March, 17:43
948
0
Очень долго работает Update запрос Oracle
27th January, 09:58
912
0
не могу запустить сервер на tomcat HTTP Status 404 – Not Found
21st January, 18:02
905
0
Где можно найти фрилансера для выполнения поступающих задач, на постоянной основе?
2nd December, 09:48
938
0
Разработка мобильной кроссплатформенной военной игры
16th July, 17:57
1724
0
период по дням
25th October, 10:44
3955
0
Пишу скрипты для BAS только на запросах
16th September, 02:42
3720
0
Некорректный скрипт для закрытия блока
14th April, 18:33
4613
0
прокидывать exception в блоках try-catch JAVA
11th March, 21:11
4381
0
Помогите пожалуйста решить задачи
24th November, 23:53
6085
0
Не понимаю почему не открывается детальное описание продукта
11th November, 11:51
4350
0
Нужно решить задачу по программированию на массивы
27th October, 18:01
4395
0
Метода Крамера С++
23rd October, 11:55
4309
0
помогите решить задачу на C++
22nd October, 17:31
4002
0
Помогите решить задачу на python с codeforces
22nd October, 11:11
4492
0
Python с нуля: полное руководство для начинающих
18th June, 13:58
2599
0
Каковы преимущества использования SVN по сравнению с CVS?
Моя компания использует CVS как наш фактический стандарт для управления версиями. Тем не менее, я слышал много людей, которые говорят, что SVN лучше.
Я знаю, что SVN новее, но в остальном я не знаком с его преимуществами.
То, что я ищу, - это хорошее, сжатое сравнение двух систем, отмечая любые преимущества или недостатки каждой из них в среде разработки Java/Eclipse.
CVS отслеживает только модификацию на основе file-by-file, в то время как SVN отслеживает всю фиксацию как новую ревизию, что означает, что легче следить за историей вашего проекта. Добавьте к этому тот факт, что все современные программы управления версиями используют концепцию ревизии, так что гораздо легче перейти с SVN, чем с CVS.
Существует также проблема атомной фиксации. Хотя я столкнулся с этим только один раз, вполне возможно, что 2 человека, совершающие вместе в CVS, могут конфликтовать друг с другом, теряя некоторые данные и приводя вашего клиента в противоречивое состояние. При раннем обнаружении эти проблемы не являются серьезными, потому что ваши данные все еще где-то там, но это может быть боль в стрессовой обстановке.
И, наконец, не так много инструментов разрабатывается вокруг CVS больше. В то время как новые и блестящие новые инструменты, такие как Git или Mercurial, определенно не имеют инструментов, SVN имеет довольно большую базу приложений на любой системе.
EDIT 2015: Серьезно, этому ответу уже 7 лет. Забудь SVN, иди и используй Git, как все остальные!
Одно из многих сравнений:
http://wiki.scummvm.org/index.php/CVS_vs_SVN
Теперь это очень специфично для этого проекта, но много вещей aplly в целом.
Про Подрывную Деятельность:
- Поддержка версионных переименований / перемещений (невозможно с CVS): Fingolfin, Ender
- Поддерживает каталоги изначально: их можно удалить, и они версионны: Fingolfin, Ender
- Свойства файла версионны; не более "executable bit" hell: Fingolfin
- Общее число ревизий значительно упрощает версионирование сборки и регрессионное тестирование: Ender, Fingolfin
- Атомные коммиты: Финголфин
- Интуитивно понятное (на основе каталогов) ветвление и маркировка: Fingolfin
- Проще скрипты крюк (pre/post фиксации и т. д.): SumthinWicked (я использую его для помощи Doxygen после фиксации)
- Предотвращает случайное совершение конфликтных файлов: Salty-horse, Fingolfin
- Поддержка пользовательских команд 'diff': Fingolfin
- В автономном режиме дифференциалы, и они мгновенно: сев
В книге Subversion есть приложение , в котором подробно описаны важные отличия от CVS, которые могут помочь вам принять решение. Эти два подхода более или менее совпадают, но SVN был специально разработан, чтобы исправить давние недостатки в CVS, так что, по крайней мере теоретически, SVN всегда будет лучшим выбором.
Я поддержу предложение Эридиуса о Git, но я бы расширил его на другие DRCS (распределенная система контроля версий), такие как Mercurial и bazaar .
Эти продукты являются довольно новыми, и уровень оснастки и интеграции с ними на данный момент кажется низким (на основе моих первоначальных исследований). Я бы сказал, что они лучше всего подходят для разработчиков энергии там (и здесь; -)).
С другой стороны, что в настоящее время не делает для вас CVS? Судя по вашему первоначальному вопросу, на самом деле у вас их нет, "CVS sucks at this, what could I use instead?"
Вы должны взвесить затраты на любую потенциальную миграцию против выгод. Для существующего проекта, Я думаю, что это было бы трудно оправдать.
Как человек, который находится в середине переключения между CVS и SVN (первоначально мы переключили все наши проекты с cvs2svn, а затем решили, что мы будем переходить только с помощью svn на новые проекты), вот некоторые из проблем, которые у нас были.
- Слияние и ветвление очень различны, и если вы часто ветвитесь и сливаетесь, если только у вас не работает SVN 1.5 на вашем сервере, вы должны знать, когда вы разветвлялись (это не очень ясно в диалогах Tortoise SVN). Майкл говорит, что ветвление и слияние интуитивно понятны, я бы сказал, что после использования CVS в течение 10 лет это не так.
- Если вы используете сервер SVN на Linux, может быть трудно заставить ваш SA перейти на svn 1.5, так как по умолчанию устанавливается 1.4.x.
- Слияние конфликтов далеко не так легко и ясно (по крайней мере, для меня и моих коллег) в TortoiseSVN году, как в TortoiseCVS. Подход с тремя панелями требует некоторого привыкания, и WinMerge (мой предпочтительный инструмент слияния) не выполняет слияние с тремя панелями.
- Будьте осторожны: многие из онлайн-учебников и журнальных статей, которые я читал, очевидно, не ветвятся и не сливаются, вы должны настроить свой основной репозиторий как https://svn.yoursvnserver.com/repos/YourProject/Trunk и ветви на https://svn.yoursvnserver.com/repos/YourProject/Branches/BranchX . Вы можете все убрать, если начнете свои РЕПО не в том месте, но это приведет к путанице.
CVS (система параллельных версий) и SVN (SubVersioN) - это две файловые системы управления версиями, которые обычно используются командами, совместно работающими над одним проектом. Эти системы позволяют сотрудникам отслеживать вносимые изменения и знать, кто разрабатывает какую ветвь и следует ли применять ее к основному стволу или нет. CVS является гораздо более старым из двух, и это был стандартный инструмент совместной работы для многих людей. SVN гораздо новее, и он вводит много улучшений для удовлетворения потребностей большинства людей.
Ну, несколько вещей, которые я чувствую, делают svn потрясающим.
- Комбинация тигля SVN-Altassian является гораздо более совершенным методом проверок и контроля качества
- Более эффективное управление конфликтами и слияниями
- Очевидно, что это быстрее для принятия чекаутов, выполнения коммитов и т. д.
- Проблема atomic commit - возможно, что 2 человека, совершающие совместное выполнение в CVS, могут конфликтовать друг с другом, теряя некоторые данные и приводя вашу кодовую базу в несогласованное состояние
Миграция может быть легко выполнена за несколько часов с помощью cvs2svn.