Être connecter les détails d'un numéro de révision spécifique dans un post-commit hook avec SharpSVN?

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

  •  12-09-2019
  •  | 
  •  

Question

Je suis en train d'écrire un post-commit hook en utilisant SharpSVN mais ne peut pas comprendre comment obtenir les informations en utilisant changeset SharpSVN donné le numéro de révision et le chemin d'accès au repo. Toutes les idées sont très appréciés.

Était-ce utile?

La solution

Dans les clients crochet vous souhaiterez probablement utiliser le SvnLookClient qui accède directement au référentiel. Dans cet exemple (copié à partir d'une autre question ici) J'utilise aussi la classe SvnHookArguments pour analyser les arguments de crochet.

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

Autres conseils

Vous voulez que la méthode getLog .

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

Cela pourrait ne pas être exact (pas IntelliSense! Comment puis-je m'y attendais au code C # sans que :(), mais son à peu près ce que vous voulez.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top