Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: SVN vs CVS  (Прочитано 16252 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Hooter
Опытный

ru
Offline Offline
Пол: Мужской

« : 06-04-2006 13:09 » 

Уже несколько раз встречал высказывания, что SVN лучше CVS. Кто-нибудь может объяснить, чем именно?
Записан
Hoha
Гость
« Ответ #1 : 06-04-2006 14:17 » 

http://en.wikipedia.org/wiki/Subversion_(software)

Цитата
- Atomic commits. Interrupted commit operations do not cause repository inconsistency or corruption.
- Renamed/copied/removed files retain full revision history.
- Native support for binary files, with space-efficient binary-diff storage.
- Directories are versioned. Entire directory trees can be moved around and/or copied very quickly, and retain full revision history.
- Constant time branching and tagging.
- Optimized repository accesses. This reduces unnecessary network traffic to the repository host.
Записан
Hooter
Опытный

ru
Offline Offline
Пол: Мужской

« Ответ #2 : 07-04-2006 04:59 » 

Улыбаюсь Спасибо.

Тогда вопрос:
насколько я знаю, в CVS номер ревизии имеет каждый файл, а в SVN - номер ревизии относится ко всему репозиторию. Так ли это? Для меня это несколько неудобно. Можно ли это отключить в SVN?
Записан
Hoha
Гость
« Ответ #3 : 07-04-2006 05:34 » 

Отключить нельзя, так задумано. Скажи, чем неудобно - наверняка решение есть.
Записан
Hooter
Опытный

ru
Offline Offline
Пол: Мужской

« Ответ #4 : 07-04-2006 05:53 » 

Например, структура проекта следующая (проет содержит следующие модули):
Код:
project
    module1
    module2
        module4
    module3
        module5
Если проект достаточно хорошо спроектирован, то каждый модуль можно использовать отдельно от остальных с какими-то доугими продуктами... При внесении изменений в один из модулей можно изменять версию только одного модуля, а не всего проекта в целом.
В SVN номер ревизии меняется у всего проекта. Для меня это неудобно.
Записан
Hooter
Опытный

ru
Offline Offline
Пол: Мужской

« Ответ #5 : 07-04-2006 06:47 » 

Еще, например, в CVS есть механизм, который позволяет просмотреть, кто и какие файлы редактирует.
В SVN, похоже, такой возможности нет? Видимо, из-за вот этого:
Цитата
- Optimized repository accesses. This reduces unnecessary network traffic to the repository host.
Записан
Hoha
Гость
« Ответ #6 : 07-04-2006 08:19 » 

Если модули начинают повторно использоватся - их стоит вывести из репозитория в отдельный проект.

Насчет правки файлов не все мне понятно, но видится так:

1) если тебе все равно, что там с файлом, то и смотреть не стоит, правильно?
2) если изменения в этом файле сильно повлияют на архитектуру системы (интерфейсы библиотек и пр.) - стоит создать временный бранч и вообще это тема для общения с командой.
3) если ты не уверен, что ваши изменения получится слить, т.е. нужен эксклюзивный доступ - ставишь блокировку. Пока ты ее не снимешь - никто свои изменения закоммитить не сможет. Текущие блокировки по желанию можно посмотреть.

Это все ИМХО, конечно.
Записан
Igel
Опытный

ru
Offline Offline
Пол: Мужской

« Ответ #7 : 07-04-2006 17:33 » 

Еще, например, в CVS есть механизм, который позволяет просмотреть, кто и какие файлы редактирует.
Что-то не припомню. Откуда сервер знает кто и какие файлы редактирует, когда работа идет с локальной копией?
Записан

Ёжики, это не только ценные шкурки...
Finch
Спокойный
Администратор

il
Offline Offline
Пол: Мужской
Пролетал мимо


« Ответ #8 : 07-04-2006 18:34 » 

Igel, Я так думаю, ты не можеш брать на редактирование сразу все файлы. Береш только те, которые разрешены.  И при этом выставляеш статус ToDo файла.
Записан

Не будите спашяго дракона.
             Джаффар (Коша)
Hoha
Гость
« Ответ #9 : 07-04-2006 18:44 » 

Igel, думаю, имеется в виду watch с последующими edit-unedit.
Записан
Igel
Опытный

ru
Offline Offline
Пол: Мужской

« Ответ #10 : 08-04-2006 15:26 » 

Finch, Hoha, че вы грузите, я и так с трудом разобрался в системе веток, релизов и пр...
Но взять все файлы можно в любом случае, скорее всего. По крайней мере заблокировать как-то получение не удалось. Вот когда ложишь, тогда да - могут возникнуть проблемы.
Вопрос может быть еще в том, что можно посмотреть историю, кто какие версии брал!
Записан

Ёжики, это не только ценные шкурки...
Hooter
Опытный

ru
Offline Offline
Пол: Мужской

« Ответ #11 : 10-04-2006 05:06 » 

Еще, например, в CVS есть механизм, который позволяет просмотреть, кто и какие файлы редактирует.
Что-то не припомню. Откуда сервер знает кто и какие файлы редактирует, когда работа идет с локальной копией?
Набираешь в консоли cvs editors и получаешь список редактируемых файлов и пользователей, которые эти файлы реадактируют.

Чтобы серевер узнал о том, что файлы редактируются, нужно, чтобы пользователь сообщил ему об этом - набрал cvs edit <filename>.
Записан
Hooter
Опытный

ru
Offline Offline
Пол: Мужской

« Ответ #12 : 10-04-2006 05:10 » 

Igel, думаю, имеется в виду watch с последующими edit-unedit.
Можно watch, а можно на локальной машине пользователя прописать переменную окружения CVSREAD. Смысл тот же, только не надо для каждого модуля запускать cvs watch.
Записан
Hooter
Опытный

ru
Offline Offline
Пол: Мужской

« Ответ #13 : 10-04-2006 05:43 » 

Если модули начинают повторно использоватся - их стоит вывести из репозитория в отдельный проект.
Имхо, есть разница между "один репозиторий для всех проектов" (cvs) и "каждый проект в отдельном репозитории" (svn).

Hoha, думаю, что всё дело в привычке (я имею в виду преимущества и недостатки svn и cvs).
Возможно, уже стоит переползать на использование svn... Но пока это еще не очевидно.
« Последнее редактирование: 10-04-2006 07:19 от Hooter » Записан
Hoha
Гость
« Ответ #14 : 10-04-2006 08:23 » 

Конечно, я и не агитирую Улыбаюсь.
Записан
Hooter
Опытный

ru
Offline Offline
Пол: Мужской

« Ответ #15 : 10-04-2006 08:51 » 

Просто я сам для себя еще не могу решить, стОит на svn переходить или нет Улыбаюсь
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines