Obter detalhes de log para um número de revisão específico em um post-commit gancho com SharpSVN?

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

  •  12-09-2019
  •  | 
  •  

Pergunta

Eu estou tentando escrever um gancho post-commit usando SharpSVN mas não consigo descobrir como obter a informação de alterações usando SharpSVN dado o número de revisão e o caminho para o repo. Todas as ideias são muito apreciados.

Foi útil?

Solução

Na clientes gancho você provavelmente vai querer usar o SvnLookClient que acessa diretamente o repositório. Neste exemplo (copiado de uma outra pergunta aqui) Eu também uso a classe SvnHookArguments para analisar os argumentos de gancho.

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

Outras dicas

Você quer que a GetLog método.

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

Isso pode não ser exato (sem intellisense! Como eu esperava para o código C #, sem que :(), mas seu aproximadamente o que você quer.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top