LINUX.ORG.RU

Вышел Subversion 1.2.0


0

0

Вышла новая версия проекта Subversion, Subversion 1.2.0. Домашняя страница проекта - http://subversion.tigris.org

Subversion - это система управления версиями (VCS, Version Control System), построенная по схеме с центральным репозиторием и призванная заменить устаревшую систему CVS. Subversion распространяется с лицензией в стиле лицензии Apache.

Список нововведений:

- блокировка (резервирование) файлов

- полная поддержка автоверсионирования WebDAV (в соответствии с RFC2518bis)

- ускорена обработка бинарных файлов (для получения ускорения на существующем репозитории нужно сделать цикл dump/load)

- (для пользователей Windows) закэшированные пароли теперь шифруются криптографическим сервисом Windows

- Множество других улучшений

>>> Подробности

★★★★

Проверено: Pi ()

Ответ на: комментарий от anonymous

Просто чудесная система! С точки зрения как разработчика, так и пользователя. Удобная, быстрая, компактная!.. Большой респект тем, кто развивает эту восхитительную софтину.

anonymous
()
Ответ на: комментарий от anonymous

Достоинства:

1. (и для меня самое главное) позволяет работать в отрыве от
   репозитория (имеется в виду: добавлять/удалять файлы, делать diff
   относительно последнего update), а с репозиторием соединяться
   только для commit и update (правда для этого в .svn держится
   оригинальный срез репозитория и поэтому проект на диске занимает
   в два раза больше места).

2. атомарные commit'ы, что позволяет не беспокоиться о качестве связи.
   Пройдёт либо все, либо ничего.

3. Комментарии привязаны к commit'ам, что более удобно с точки зрения
   анализа изменений. Кроме того когда делаешь лог, то видишь
   комментарии только к commit'ам той ветки проекта, с которой
   работаешь, тогда как CVS вываливает полный лог по файлу (cvs2cl.pl
   ведёт себя точно так же).

4. Более логичная и удобная схема бранчинга/тэггинга (IMHO)

5. версионинг каталогов. На долгих проектах с сильно менящейся
   структурой даёт довольно ошутимый выигрыш в удобстве (у CVS можно
   использовать -P при update для исключения пустых директорий, однако
   это не всегда удобно (например, когда проект _должен_ содержать
   пустые каталоги))

6. С точки зрения интерфейса пользователя очень похоже на CVS :-))

7. маленькое, но все же удобство: служебный каталог .svn является
   скрытым и не болтается перед глазами при работе.

Недостатки:

1. Медленнее работает (по крайней мере у меня)

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

Администрирование (это не недостаток а особенность, для чего-то
удобная, для чего-то нет):

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

snc
()
Ответ на: комментарий от anonymous

Чем же он реально удобней? Фичастее - да.
Меня лично убивает отстутствие привычного тэга $Log$
Необходимость делать svn:keywords для каждого файла.
Совершенно не впечатляет бинарный архив (с недавних пор очень осторожно к этому отношусь)
+ Какое-то странное чувство, что что-то не то в subversion.
Или это все слишком давняя привычка к CVS?

mst_72
()

Долго же пришлось ждать блокировки файлов. Я даже удивлен - это было сложно запрограммировать, или их смущали какието теоретические аспекты?

LX ★★
()
Ответ на: комментарий от mst_72

> Какое-то странное чувство, что что-то не то в subversion.
> Или это все слишком давняя привычка к CVS?

ты еще arch попробуй - там вообще все по другому :)
subversion как раз и сделан для тех, кто привык к cvs.

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

anonymous
()
Ответ на: комментарий от anonymous

>очень жаль, что линус пополнил стройные ряды изобретателей велосипедов

слушай, ламо, если читать не умеешь, то лучше и не пиши, лады?

Разработчикам ядра нужен распределенный репозитарий, subversion таким функционалом не обладает и не будет обладать в ближайшем будещем.

anonymous
()
Ответ на: комментарий от anonymous

Сори за чайниковость, но что означает "расперделенный репозитарий"? Типа каждый файл проекта можно положить на разные диски? Можно поподробнее, что это за фича и почему она так необходима? (и сколько процентов проектов это используют)

Thorn
()
Ответ на: комментарий от anonymous

Ты, похоже, тоже читать не умеешь. Предыдущий аффтар имел ввиду GNU Arch, а не Subversion.

fernik
()
Ответ на: комментарий от Thorn

>Сори за чайниковость, но что означает "расперделенный репозитарий"?

Когда нет централизованного сервера на котором хранятся версии. У каждого разработчика есть своя база в которую он коммитит. Время от времени базы синхронизируются между собой (возможны различные варианты - специальный протокол, посылка патчей по почте, и.т.д).

Посмотри, например, Monotone. Ине понравилась простотой освоения и внятной документацией с картинками.

К примеру, один из плюсов - нет необходимости в постоянной связи с центральным сервером для фиксирования изменений (чего сильно не хватает Subversion).

WFrag ★★★★
() автор топика
Ответ на: комментарий от WFrag

вы так рассуждаете как будто Subversion - это закрытая система! и в ней невозможно реализовать этот функционал :)

anonymous
()
Ответ на: комментарий от anonymous

возможно, но легче это с нуля переписать.

anonymous
()
Ответ на: комментарий от snc

Очень большой минус - нет Merge tracking. Соответсвенно есть гемор при многократном update одной ветки с другой. Тут SVN ничем от CVS не отличается. Вот в GNU Arch есть merge-tracking. Можно когда угодно, сколько угодно раз синхронизироваться межру ветками без головной боли какие версии уже были синхронищированы, а какие нет. tla star-merge и все система делается за тебя.

BastardOperatorFromHell
()

О, наконец-то сборка рабочего javahl не требует бубна и шаманских плясок .
PS: Что за мода такая (с "винды" надуло ?) - отсутствие "uninstall" target ? раздражает неимоверно ...

ericius
()
Ответ на: комментарий от mst_72

> Необходимость делать svn:keywords для каждого файла.

читайте документацию на предмет automatic properties

> Совершенно не впечатляет бинарный архив (с недавних пор очень осторожно к этому отношусь)

FSFS существует уже, наверное, больше года

Реальных недостатков по сравнению с CVS у "ниспровержения" уже не осталось. А вот с другими системами - это как сказать. Хотя я их не пробовал.

anonymous
()
Ответ на: комментарий от BastardOperatorFromHell

Ну Merge Tracking на снепшот-ориентированной системе делается, мягко говоря, нетривиально. Т.е. вообще непонятно как - в любом случае придется понятие changeset вводить.

Сделают ли из svn смешанную систему - посмотрим, посмотрим. Но не скоро это будет, в любом случае.

Кстати, реально это нужно только для распределенных систем, с pull-моделью. Т.е. если вы часто на это напарываетесь - вы либо как-то не так разрабатываете, либо используете не ту SCS ;)

anonymous
()
Ответ на: комментарий от anonymous

Я использую GNU Arch ;-)

BastardOperatorFromHell

anonymous
()
Ответ на: комментарий от mst_72

> Меня лично убивает отстутствие привычного тэга $Log$ А что делает этот тег?

anonymous
()
Ответ на: комментарий от SKYRiDER

>А чего о нём говорить? Рулез. :)
А где о нем почитать ? А на русском было бы вообще супер !

anonymous
()
Ответ на: комментарий от mst_72

> Совершенно не впечатляет бинарный архив (с недавних пор очень осторожно к этому отношусь)

Читай внимательно новость -- теперь FS backend используется по умолчанию.

nsav
()
Ответ на: комментарий от nsav

Прошу прощения, это было написано в новости, которую не пропустили.

nsav
()
Ответ на: комментарий от anonymous

Он в файл пишет, кто его менял.
У нас типовой заголовок к файлу (c, c++, h etc)
/*!
описаловка файла (зачем нужен)
$Header$
$Log$

*/

И только открыв файл видно, кому по рукам бить, если что, кто что правил (так как при каждом коммите адекватные комментарии пишутся)
А в svn надо еще что-то руками делать (лог смотреть). Может это и правильный подход, но лично мне не нравится.

mst_72
()
Ответ на: комментарий от mst_72

типовой заголовок к файлу (c, c++, h etc)
/*!
описаловка файла (зачем нужен)
$Header$
$Log$

*/
> И только открыв файл видно, кому по рукам бить

без annotate/blame всё равно не найдешь, а $Log$ в начале файла - это, хм, спорно

max630
()

Кстати, кто что модет сказать про svn::mirror и svn::push. Пригодно ли это для использования?

max630
()
Ответ на: комментарий от anonymous

>А относительно GNU Arch кто чего скажет? :-)

Неуважительное отношение к пользователю - сайт, не очень дружелюбная (и местами устаревшая) документация, навязывает много какой-то левой функциональности :(

Monotone и dArcs мне больше понравились, хотя они и попроще.

WFrag ★★★★
() автор топика
Ответ на: комментарий от anonymous

> Таки почему ж его Линус не выбрал?

А вот это надо спросить у Линуса...

Ещё хотелось бы обратить внимание на bazaar-ng: http://www.bazaar-ng.org/ Пока проект совсем молодой, но очень многообещающий IMHO. Вот цитата из FAQ:

What is the relation between Bazaar and Bazaar-NG?

They are two different approaches to the same challenge: building a version control system that open source developers will love to use.

Bazaar (command name baz) is a fork of the GNU Arch project, trying to fix some of the immediate user interface problems while retaining compatibility. Bazaar-NG (bzr) is a from-scratch project trying to take the best ideas from Baz and also from other projects.

Bazaar has a strong "Arch flavor"; Bazaar-NG has ideas from arch but the influence is less strong.

If you want a system to use in production now, you should consider baz. If you want to help shape the next-generation system, you should try out and give feedback on bzr.

At the moment they do not share code and are not compatible. They use different command names so you can have both installed and use them for different projects.

In the long term, the two projects should converge: their interfaces will become more and more similar, ideas will migrate from one to the other, they will understand each other's formats, and eventually one codebase will succeed the other. Exactly how and when this happens depends is yet to be determined.

SKYRiDER ★★★
()
Ответ на: комментарий от SKYRiDER

Особенно интересно в bazaar-ng то, что её разрабатывают в конторе специализирующейся на выпуске эротической литературы. Символично :)

anonymous
()
Ответ на: комментарий от anonymous

> Особенно интересно в bazaar-ng то, что её разрабатывают в конторе специализирующейся на выпуске эротической литературы. Символично :)

Где траву берёте? :)

bazaar-ng делается "конторой" Canonical, Inc., которая делает Ubuntu Linux.

SKYRiDER ★★★
()
Ответ на: комментарий от SKYRiDER

> > А относительно GNU Arch кто чего скажет? :-)

> А чего о нём говорить? Рулез. :)

Для линуксоидов - да. А если кто-то из разработчиков под виндой, то всё, беда полная.

Vond ★★
()
Ответ на: комментарий от Vond

> Для линуксоидов - да. А если кто-то из разработчиков под виндой, то всё, беда полная.

Этого недостатка (будет) лишён bazaar-ng.

SKYRiDER ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.