SharpSVN과 함께 커밋 후 후크에서 특정 개정 번호에 대한 로그 세부 정보를 얻습니까?

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

  •  12-09-2019
  •  | 
  •  

문제

SharpSVN을 사용하여 커밋 후 후크를 작성하려고하지만 개정 번호와 리포지토리 경로가 주어지면 SharPSVN을 사용하여 변경 사항 정보를 얻는 방법을 알 수 없습니다. 모든 아이디어는 대단히 감사합니다.

도움이 되었습니까?

해결책

후크 클라이언트에서는 저장소에 직접 액세스하는 SVNLookclient를 사용하고 싶을 것입니다. 이 예에서는 다른 질문에서 복사)에서도 후크 인수를 구문 분석하기 위해 svnhookarguments 클래스를 사용합니다.

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)
    {
       //
    }
  }
}

다른 팁

당신은 원합니다 GetLog 방법.

SvnRevision rev(123);
client.GetLog(uri, new SvnLogArgs(rev), out logitems); // uri is your url to the repo.

그것은 정확하지 않을 수 있습니다 (지능적인!

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top