Подтвердить что ты не робот

Mercurial, написание крючков с использованием .NET api

Привет, Я ищу примеры того, как писать Mercurial hooks на языке .NET, в том числе о том, как настроить .hg/hgr

Я использовал Api "Mercurial.Net", но информация в переменных среды Windows немного ограничена, и возвращаемые сообщения об ошибках на стандартном канале ошибок не работают. Думаю, я делаю что-то неправильно.

Я использую .Net по ряду причин, один из которых связан с другими системами с использованием WFC

4b9b3361

Ответ 1

EDIT Новая версия Mercurial.Net упрощает написание крючков, см. http://mercurialnet.codeplex.com/discussions/261283

  • Создайте проект "Приложение Windows" (например, MyHook).
  • Добавьте ссылку на "Mercurial.Net" (вы можете использовать NuGet, чтобы упростить http://nuget.org/List/Packages/Mercurial.Net).
  • В своем основном методе выполните любую необходимую обработку (например, извлеките журнал, а затем информацию о последнем фиксации - см. http://mercurialnet.codeplex.com/discussions/261283 для примера). Вы можете добавить MessageBox.Show(message), чтобы проверить, действительно ли выполнен крючок.
  • Скомпилируйте свой проект.
  • Добавьте крючок в ваш .hg/hgrc файл (ниже приведен пример крючка, который будет выполняться после каждой фиксации, см. https://www.mercurial-scm.org/wiki/Hook для получения дополнительной информации, http://hgbook.red-bean.com/read/handling-repository-events-with-hooks.html для получения дополнительной информации):

    [hooks]
    commit.hook1 = "C:\path to file\MyHook.exe"
    

В следующий раз, когда вы совершаете свой крючок, должен быть выполнен.

Проверьте http://docs.vkarlsen.no/Mercurial.Net/, чтобы узнать о классах Mercurial.Net.