ViewVC — различия между версиями
BenderBot (обсуждение | вклад) м (1 версия) |
StasFomin (обсуждение | вклад) м |
||
Строка 1: | Строка 1: | ||
− | + | ViewVC — система онлайн-просмотра репозиториев систем версионного контроля, таких как [[CVS]] и [[Subversion]]. Ранее называлась ViewCVS. | |
* Сайт: http://www.viewvc.org/, http://viewvc.tigris.org/ | * Сайт: http://www.viewvc.org/, http://viewvc.tigris.org/ | ||
Строка 24: | Строка 24: | ||
== Листинги директорий == | == Листинги директорий == | ||
− | Заходя на главную страницу ViewVC, можно увидеть список [[CVS]]- и [[Subversion]]-репозиториев, а также ссылку «Query revision history» вверху страницы. Далее можно выбрать | + | Заходя на главную страницу ViewVC, можно увидеть список [[CVS]]- и [[Subversion]]-репозиториев, а также ссылку «Query revision history» вверху страницы. Далее можно выбрать репозиторий — вы увидите список файлов и каталогов/модулей (cvs), находящихся в нём. Аналогично, кликнув на каталог, вы увидите листинг файлов и подкаталогов в нём. |
== Журналы ревизий == | == Журналы ревизий == | ||
Строка 32: | Строка 32: | ||
== Различия между версиями == | == Различия между версиями == | ||
− | Diff’ы отображаются с подсветкой удалённых/добавленных/изменённых строк и некоторым количеством строк контекста. Можно просматривать различия только по отдельным файлам; удобнее всего делать это со страницы журнала | + | Diff’ы отображаются с подсветкой удалённых/добавленных/изменённых строк и некоторым количеством строк контекста. Можно просматривать различия только по отдельным файлам; удобнее всего делать это со страницы журнала ревизий — нажимая на ссылки «Diff to previous XXX» или выбирая две версии (числовых, а в случае с CVS — и именованных) и желаемый формат различий внизу страницы. А со страницы с самими различиями можно скачать патч, нажав на ссылку «Patch». |
== Списки изменений по ревизиям == | == Списки изменений по ревизиям == | ||
Строка 46: | Строка 46: | ||
На страницу поиска коммитов (изменений) можно попасть по ссылкам «Query revision history» в листингах каталогов. На странице поиска можно выбрать репозиторий, поддиректорию, отдельный файл, логин автора, интервал дат и/или текст комментария для поиска. Большинство параметров может содержать как точное значение, так и регулярное выражение для выбора нескольких вариантов. | На страницу поиска коммитов (изменений) можно попасть по ссылкам «Query revision history» в листингах каталогов. На странице поиска можно выбрать репозиторий, поддиректорию, отдельный файл, логин автора, интервал дат и/или текст комментария для поиска. Большинство параметров может содержать как точное значение, так и регулярное выражение для выбора нескольких вариантов. | ||
− | Нужно отметить несколько нетривиальное поведение поля «поддиректория» при переходе на форму поиска также из некоторой поддиректории | + | Нужно отметить несколько нетривиальное поведение поля «поддиректория» при переходе на форму поиска также из некоторой поддиректории репозитория — при этом поле «поддиректория» становится относительным по отношению к поддиректории, из которой был сделан переход. |
− | Форма поиска используется для интеграции с [[Bugzilla]] | + | Форма поиска используется для интеграции с [[Bugzilla]] — в Bugzilla можно увидеть ссылки «Look for bug in CVS&SVN», ведущие на результаты поиска изменений с номером бага или словом «bugXXXX» в тексте. |
=== RSS-ленты изменений === | === RSS-ленты изменений === | ||
− | Кликнув на привычный значок [[RSS]] [[Изображение:rss14.png]] на странице, можно получать результаты любых поисков в формате [[RSS]]. В том числе, можно подписываться на изменения по отдельным репозиториям, каталогам, | + | Кликнув на привычный значок [[RSS]] [[Изображение:rss14.png]] на странице, можно получать результаты любых поисков в формате [[RSS]]. В том числе, можно подписываться на изменения по отдельным репозиториям, каталогам, файлам — нужно просто кликнуть по значку [[RSS]]. |
=== Патчи из выбранных изменений === | === Патчи из выбранных изменений === | ||
Строка 60: | Строка 60: | ||
=== Списки merge для отмены изменений === | === Списки merge для отмены изменений === | ||
− | Ещё одна нетривиальная возможность страницы | + | Ещё одна нетривиальная возможность страницы результатов — ссылка «''Show commands which could be used to back out these changes''». Перейдя по ней, вы увидите список команд merge, которые нужно выполнить в рабочей копии репозитория, чтобы попытаться отменить все изменения, выведенные на странице результатов поиска. |
= Ссылки = | = Ссылки = | ||
Строка 68: | Строка 68: | ||
* [[WikiPedia:ViewVC|ViewVC в Википедии]]; | * [[WikiPedia:ViewVC|ViewVC в Википедии]]; | ||
− | [[ | + | [[Категория:Программирование]] |
{{Replicate-from-custiswiki-to-lib}} | {{Replicate-from-custiswiki-to-lib}} | ||
+ | [[Категория:CustisWikiToTools]] |
Версия 20:57, 1 декабря 2010
ViewVC — система онлайн-просмотра репозиториев систем версионного контроля, таких как CVS и Subversion. Ранее называлась ViewCVS.
- Сайт: http://www.viewvc.org/, http://viewvc.tigris.org/
- Распространение: freeware, opensource (BSD-подобная лицензия)
Содержание
Основные возможности
- Просмотр листингов директорий (ls) (в том числе по предыдущим версиям)
- Просмотр журналов ревизий с комментариями (log)
- Просмотр различий между версиями, в том числе в формате патча (diff)
- Просмотр списков изменённых файлов в отдельных ревизиях
- Построчное аннотирование (поиск виновного) (blame/annotate)
- Просмотр содержимого файлов
- Подсветка синтаксиса многих языков программирования, в том числе нашего PL/SQL препроцессируемого m4 (*.sp4)
- RSS-ленты изменений (в том числе по отдельным каталогам)
- Поиск изменений в базе данных, в том числе по тексту комментария
- Генерация патчей из выбранных списков изменений
- Вывод списка команд merge для отмены выбранных изменений
Использование ViewVC
В нашей Компании главную страницу ViewVC можно увидеть по локальному адресу http://viewvc.office.custis.ru/.
Листинги директорий
Заходя на главную страницу ViewVC, можно увидеть список CVS- и Subversion-репозиториев, а также ссылку «Query revision history» вверху страницы. Далее можно выбрать репозиторий — вы увидите список файлов и каталогов/модулей (cvs), находящихся в нём. Аналогично, кликнув на каталог, вы увидите листинг файлов и подкаталогов в нём.
Журналы ревизий
К журналу ревизий можно перейти, выбирая файл из списка (по умолчанию открывается журнал ревизий), кликая в списке на номер ревизии рядом с каталогом, или переходя по ссылке «(modified)» в списке изменений, просматриваемом по номеру ревизии.
Различия между версиями
Diff’ы отображаются с подсветкой удалённых/добавленных/изменённых строк и некоторым количеством строк контекста. Можно просматривать различия только по отдельным файлам; удобнее всего делать это со страницы журнала ревизий — нажимая на ссылки «Diff to previous XXX» или выбирая две версии (числовых, а в случае с CVS — и именованных) и желаемый формат различий внизу страницы. А со страницы с самими различиями можно скачать патч, нажав на ссылку «Patch».
Списки изменений по ревизиям
В Subversion (не CVS) каждая фиксация изменений атомарна, а в репозиториях хранятся данные для сопоставления номера ревизии репозитория и всех изменений, в ней произошедших. Кликнув по номеру ревизии на странице журнала изменений файла, или по номеру ревизии вверху страницы со списком файлов в каталоге Subversion, вы попадаете на страницу с информацией об изменениях, произошедших в данной ревизии.
Построчное аннотирование
Аннотирование (поиск виновного): файл разбивается на строки, и напротив каждой строки выводится информация о том, кто последний её менял. Чтобы перейти на страницу с аннотацией, нужно кликнуть на ссылку annotate на странице с журналом ревизий.
Поиск изменений
На страницу поиска коммитов (изменений) можно попасть по ссылкам «Query revision history» в листингах каталогов. На странице поиска можно выбрать репозиторий, поддиректорию, отдельный файл, логин автора, интервал дат и/или текст комментария для поиска. Большинство параметров может содержать как точное значение, так и регулярное выражение для выбора нескольких вариантов.
Нужно отметить несколько нетривиальное поведение поля «поддиректория» при переходе на форму поиска также из некоторой поддиректории репозитория — при этом поле «поддиректория» становится относительным по отношению к поддиректории, из которой был сделан переход.
Форма поиска используется для интеграции с Bugzilla — в Bugzilla можно увидеть ссылки «Look for bug in CVS&SVN», ведущие на результаты поиска изменений с номером бага или словом «bugXXXX» в тексте.
RSS-ленты изменений
Кликнув на привычный значок RSS на странице, можно получать результаты любых поисков в формате RSS. В том числе, можно подписываться на изменения по отдельным репозиториям, каталогам, файлам — нужно просто кликнуть по значку RSS.
Патчи из выбранных изменений
ViewVC может генерировать патчи из результатов поиска изменений (ревизий). Для генерации патча перейдите по ссылке «Show a patch built from these changes», показываемой вверху страницы результатов поиска. Помните, что если результаты поиска включают в себя изменения одних и тех же файлов, сильно разнесённые во времени, патч будет включать также и все изменения, сделанные в том же файле между найденными. ViewVC старается отслеживать такие ситуации и выводить предупреждение о них в следующей форме: CAUTION: selected changes are not contiguous, patch may include differences from other commits.
Списки merge для отмены изменений
Ещё одна нетривиальная возможность страницы результатов — ссылка «Show commands which could be used to back out these changes». Перейдя по ней, вы увидите список команд merge, которые нужно выполнить в рабочей копии репозитория, чтобы попытаться отменить все изменения, выведенные на странице результатов поиска.
Ссылки
Любые правки этой статьи будут перезаписаны при следующем сеансе репликации. Если у вас есть серьезное замечание по тексту статьи, запишите его в раздел «discussion».
Репликация: База Знаний «Заказных Информ Систем» → «ViewVC»