Page 1 of 4

Работа с SVN сервером kolibrios

Posted: Mon Apr 09, 2007 8:10 pm
by vectoroc
"Статейка" для тех, кто "я не пользуюсь SVN"

Многие люди не пользуются SVN-ом, как я понимаю, только потому что они не умеют им пользоваться. Им собственно и посвящается.
Наиболее простой известный мне способ для быстрого старта - это скачать уже ставшую известной программу TortoiseSVN
Основные понятия при работе с SVN - это рабочая копия и репозиторий. Каждый разработчик имеет свою рабочую копию, которую он периодически заливает в репозиторий. Кому интересно больше могут проследовать по этой ссылке.

Скачав и установив TortiosSVN, можно приступать к "извлечению" своей рабочей копии. Правой кнопкой мышки (далее ПКМ, левой соответственно ЛКМ…) в любой папке выбираем в появившемся контекстном меню пункт "SVN Checkout..." (или "SVN извлечь..." для счастливых обладателей русской версии"). Появится диалоговое окно
Image
Вбиваем в поле "URL of repository" нужный линк (чтобы слить весь репозиторий проекта, надо указать svn://kolibrios.org) и нажимаем OK.
На этом можно закончить. У вас должна появиться рабочая копия последней на данный момент ревизии.
Замечу, что в последующем нет необходимости в повторении этих действий. Чтобы обновить рабочую копию до текущей актуально версии достаточно нажать ПКМ на папке с рабочей копией и выбрать пункт "SVN Update".

Послесловие.
Надеюсь, я всех убедил, что SVN - это просто. Для тех, кто экономит трафик, лучше выхода не придумаешь. Передаваемые по сети данные автоматически сжимаются, а при последующих обновлениях рабочей копии передаются лишь изменения, которые по обьёму занимают несопоставимо меньше места, чем полные исходники. Если во время скачки произойдёт разрыв соединений, то скачивать потом сначала не прийдётся. Достаточно будет сделать "SVN update", когда появится интернет, и недостающие данные докачаются сами.

Posted: Mon Apr 09, 2007 8:17 pm
by Nameless
Можно вопрос? Когда выкладываете на svn обновленную версию файла, все равно вы делаете это ручками, насколько я понимаю. Так вопрос... Можно бы и просто сообразить обычную ФТп и пользоваться простыми менеджерами закачек... Или я чего-то недопонимаю?

Posted: Mon Apr 09, 2007 8:21 pm
by vectoroc
Чего-то недопонимаешь. SVN - система контроля версий. Процитирую своего препода
Использовать систему управления версиями

Использование PVS (такой, как MS SourceSafe) является одним из обязательных условий профессиональной разработки программного продукта не только в команде, где PVS играет роль центральной СУБД программного кода и ресурсов, но и при разработке одним программистом. В этом случае наибольшая польза от PVS проявляется в возможности произвести откат к любой промежуточной версии системы.

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

В данном случае может возникнуть сложность, связанная с тем, что форматы файлов данных, которые вы используете, могли измениться. Здесь, наверное, неоценимую помощь окажет хранение данных в параллельной базе PVS.

Взято здесь.
Выводы сделаешь сам.


Сначала я ещё хотел описать, как заливать изменённые файлы назад в репозиторий, но, думаю, кому интересно, разберутся сами

Posted: Mon Apr 09, 2007 8:23 pm
by Nameless
Все понял, отстал. Буду обзаводиться.

Posted: Mon Apr 09, 2007 8:26 pm
by mike.dld
Кстати, про обрывы соединений. При работе с SVN этого можно не бояться - всё замечательно докачивается.

Posted: Mon Apr 09, 2007 8:29 pm
by Nameless
Дак мне сам avn сначала выкачать надо ;)

Posted: Mon Apr 09, 2007 8:31 pm
by vectoroc
Про download-мастеры в инете хватает мануалов ;)

Posted: Mon Apr 09, 2007 8:36 pm
by Nameless
Тьфу, йопт... Вот если мне качать при постоянно рвущемся соединении (кстати, рвется изощренно - именно когда ничего не качаешь, или полностью нагружаешь канал), то и с флэшгетом проблема - дозваниваться постоянно. Ограничить скорость закачки? Долго буду качать... Но все равно, яэто дело выдерну, раз понял полезность этой фичи. больше ничего и не требовалось ;)

Posted: Tue Apr 10, 2007 2:24 am
by pivorus
А есть ли консольная версия под Win? просто тянуть 10mb ради "дружественного" интерфейса мне не улыбалось, да и консоль привычнее

Posted: Tue Apr 10, 2007 2:45 am
by vectoroc
Здесь можно скачать разные версии svn без графической оболочки. Последний 1.4.3 весит примерно 3,5 Мб.

Posted: Tue Apr 10, 2007 1:37 pm
by DmitrySokolowsky
Работет:) всё, теперь у меня весь ваш SVN!

Posted: Tue Apr 10, 2007 2:08 pm
by Heavyiron
А теперь все просто: консольная команда "svn update" в рабочей копии (для консольной версии) или правой кнопкой на папке с рабочей копией - SVN update (SVN обновить - для русской версии) для Tortoise SVN. Скачаются только те файлы, которые подверглись изменению с момента последнего обновления.

Posted: Tue Apr 10, 2007 3:58 pm
by Mario79
Остается добавить, что весь SVN репозитарий сжатый 7zip занимает всего 2,5 Мб. Если бы его выкладывали в таком виде хотябы один раз в 50 ревизий, то многим начинающим было бы еще проще...

Posted: Tue Apr 10, 2007 4:11 pm
by Heavyiron
Не думаю. Так каждый раз придется качать 2.5 мег, а если просто обновлять svn, то за 50 ревизий столько не набегает, т.к. передаются только изменения.

Posted: Wed Apr 11, 2007 7:10 am
by Mario79
Heavyiron
Я написал:
то многим начинающим было бы еще проще...
Понимаешь разницу?