Любой программист встречался с работой с svn. Это достаточно удобно как для маленьких, так и для больших компаний. Кто не знаком с таким термином приведу определение:
Subversion (также известная как «SVN») — свободная централизованная система управления версиями, официально выпущенная в 2004 году компанией CollabNet Inc.
Я знакома и работала с программным обеспечением для SVN — TortoiseSVN. Очень на мой взгляд удобный продукт. По его использованию написано большое количество документации. Бывают проблемы с производительность, если не верно настроишь сервер. Так же недостатком в его работе, как мне кажется, является очень неудобный сервис для сравнения версий — TortoiseMerge. Намного удобнее и быстрее использовать сторонний программный продукт WinMerge. Надо заметить, что как TortoiseSVN, так и WinMerge являются свободно-распространяемыми программными продуктами. Данный факт радует в двойне.
Приведу пример на файле, который содержит код pl/sql из примера по реализации планового календаря.
-- Создание таблицы create table BILLING.SPCALENDAR ( id NUMBER(30) not null, spdate DATE, day_status NUMBER ) -- Создание индекса create index BILLING.SPCALENDAR_ID on BILLING.SPCALENDAR (ID) -- Создание первичного ключа alter table BILLING.SPCALENDAR add constraint PK_SPCALENDAR primary key (ID); -- Создание последовательности create sequence billing.seq_spCaledar; --Создание триггера для автоинкремента CREATE OR REPLACE TRIGGER billing.trig_inc_spCaledar_id BEFORE INSERT on BILLING.spcalendar REFERENCING NEW AS N OLD AS O FOR EACH ROW declare id_rec number; begin select seq_spCaledar.nextval into id_rec from dual; :n.id := id_rec; end;
Что-бы добавить файл в svn, необходимо выполнить команду commit:
После того, как мы внесли некоторые изменения в файл, можно запустить утилиту сравнения,
которая по умолчанию выглядит так:
Однако для получения расширенных возможностей сравнения и слияния файлов я предпочитаю использовать WinMerge. Его нужно скачать по ссылке, указанной выше, и при установке не забыть отметить вот эту галку:
После установки WinMerge с включенной опцией интеграции с SVN, при запуске сравнения файлов происходит вызов WinMerge вместо TortoiseMerge. Эта утилита дает несравнимо большие возможности по анализу и слиянию ревизий.
Более подробно о возможностях WinMerge можно прочитать на их официальном сайте.
Основным для меня преимуществом WinMerge над прочими «сравнилками» является то, что он наиболее корректно сравнивает и нивеллирует незначащие символы, например пробел.