Visual SVN Server: руководство по зацеплению до / после фиксации - PullRequest
3 голосов
/ 23 апреля 2011

Это может быть лучше в качестве вики, учитывая комментарии здесь: Совместное использование общих / полезных хуков предварительной фиксации SVN

Я использую Visual SVN 2.1.7 на компьютере с Windows 7. У нас есть разработчики из разных стран, и мы можем управлять изменениями кода, запустив локальные копии изменений и затем вручную загрузив их через ftp на сервер для каждого веб-сайта, над которым работаем.

Это невероятно трудоемкий процесс, но менее трудоемкий, чем исправление ошибок на живых сайтах, поэтому это шаг в правильном направлении.

На веб-сайте Visual SVN он упоминает о хуках post-commit и pre-commit, но не показывает, где к нему можно получить доступ, даже при том, что в нем упоминается GUI. В установленной версии нет никаких признаков графического интерфейса или какой-либо опции, поэтому я, во-первых, не могу найти, где к ней получить доступ.

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

Есть ли у кого-нибудь опыт или руководство, включая примеры сценариев, для выполнения следующих задач в Windows (без установленного Perl)?

a) Создает команду / файл предварительной фиксации и прикрепляет ее выполнение к хранилищу / фиксирует в нем b) Создайте команду / файл post-commit и прикрепите ее выполнение к хранилищу / фиксирует в нем

и в моем случае одна конкретная задача: c) Как установить локальную версию Visual SVN на ПК, который может отправлять подтвержденные файлы на удаленный общий хост-сервер CentOS (не на VPS / Dedi или Cloud, и SVN не может быть установлен на этих машинах)

Это отличный программный продукт, но, похоже, барьер для его эффективности достаточно высок, потому что неясно, какие вопросы нужно задавать или где искать. Надеемся, что вы можете помочь обеспечить лучшую отправную точку для тех, кто застрял таким же образом.

Спасибо:)

1 Ответ

2 голосов
/ 23 апреля 2011

Доступ к хукам:

1. Запустите VisualSVN Server Manager

2.Открытые свойства для вашего репозитория

3.Выберите вкладку Хуки

4. Отредактируйте необходимый хук

Хуки являются условными, а не основанными на конфигурации.Вам не нужно «зацеплять» их.Создайте pre-commit хук, и у вас есть хук, работающий до фиксации.Создайте хук post-commit, и у вас будет хук, который запускается после коммита.

Вот шаги, которые вы можете сделать в своем скрипте пост-фиксации для того, что вам нужно:

Вы получаетепуть репо и ревизия передаются в качестве аргументов для ловушки post-commit, поэтому используйте что-то вроде repo=%1 и rev=%2 для получения этих значений.

Один из способов скопировать файлы после коммита - это иметь рабочую копиюна вашем сервере введите svn update этой рабочей копии после фиксации в хуке post-commit, а затем скопируйте файлы.Вы можете выборочно копировать файлы, получая файлы, которые были изменены с помощью svnlook changed.svnlook нуждается в пересмотре и использует переменную rev, которую вы установили ранее.

Сам скрипт может быть на любом языке.

...