Как я могу просмотреть изменения, сделанные после внесения изменений, и проанализировать их для комментариев?

StackOverflow https://stackoverflow.com/questions/293582

  •  08-07-2019
  •  | 
  •  

Вопрос

Я надеялся автоматизировать некоторые задачи, связанные с SubVersion, поэтому я получил SharpSvn. К сожалению, я не могу найти много документации для этого.

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

Это было полезно?

Решение

Если вы просто хотите просмотреть SharpSvn, вы можете использовать http://docs.sharpsvn.net/ . Документация там далека от завершения, так как основное внимание уделяется предоставлению функций. Любая помощь по улучшению документации (или самого SharpSvn) приветствуется; -)

Чтобы использовать сообщения журнала для вашего трекера, вы можете использовать два маршрута:

<Ол>
  • Хук после фиксации, который обрабатывает изменения по одному
  • Запланированная служба, которая вызывает 'svn log -r < last-retrieved >: HEAD' время от времени.
  • В последних ежедневных сборках SharpSvn есть некоторая поддержка хуков коммитов, но эта часть еще не является действительно стабильной.

    Вы можете создать хук post commit (post-commit.exe) с помощью:

    static void Main(string[] args)
    {
      SvnHookArguments ha;
      if (!SvnHookArguments.ParseHookArguments(args, SvnHookType.PostCommit, false, out ha))
      {
        Console.Error.WriteLine("Invalid arguments");
        Environment.Exit(1);
      }
    
      using (SvnLookClient cl = new SvnLookClient())
      {
        SvnChangeInfoEventArgs ci;
        cl.GetChangeInfo(ha.LookOrigin, out ci);
    
        // ci contains information on the commit e.g.
        Console.WriteLine(ci.LogMessage); // Has log message
    
        foreach(SvnChangeItem i in ci.ChangedPaths)
        {
           //
        }
      }
    }
    

    (Для полного решения вам также нужно подключить post-revprop-change, поскольку ваши пользователи могут изменить сообщение журнала после первого коммита)

    Другие советы

    Интересно, а не могут ли хуки subversion (на сервере svn) быть здесь другим подходом? Я не пробовал, но CaptainHook предлагает svn - > интеграция с .NET-хуками.

    Лицензировано под: CC-BY-SA с атрибуция
    Не связан с StackOverflow
    scroll top