40 votes

Je dois accéder/commander/mettre à jour un dépôt SVN dans une application WPF en utilisant l'API ou les bibliothèques SVN.

Y a-t-il de bonnes bibliothèques disponibles pour accéder à SVN depuis une application .net (en utilisant C#) ? Les 3 seules que j'ai trouvées jusqu'à présent et que je vais essayer sont :

Je veux créer un client SVN très simple !

60voto

Bert Huijben Points 13856

SharpSvn a été conçu pour .Net 2.0 et Subversion 1.5 et plus. Il intègre toutes les dépendances de Subversion dans un seul ensemble de dll qui est directement utilisable depuis .Net (déployable par XCopy). Un des autres points forts de SharpSvn est qu'il cache toute la gestion de la mémoire et transforme les erreurs de Subversion en exceptions, et plus important encore, vice versa. (Cela rend le débogage des callbacks très facile).

NSvn était utilisé par AnkhSVN avant AnkhSVN 2.0. Il est passé à SharpSvn après cela.

Le projet IronSvn sur Codeplex a été fermé. (Il suggère d'utiliser SharpSvn).

Svn# et son successeur 2.0 Svn.Net sont des enveloppes simples de l'api C de Subversion. Ils nécessitent les binaires d'une version de Subversion pour fonctionner. Et vous devez gérer les pools apr et une partie de la collecte apr vous-même à partir du code géré. C'est la seule solution multiplateforme de cette liste. (Fonctionne aussi bien sous linux)

1 votes

Vous avez mon vote ; j'utilise SharpSvn dans mon projet. La bibliothèque est bien conçue et le support est excellent : merci ! C'est la solution la plus efficace pour utiliser svn depuis un client géré.

0 votes

Évitez simplement de placer votre dépôt sur la racine d'un disque (c:\ ou d:\ par exemple) ou SharpSvn explosera en mille morceaux de verre et déchirera un nouvel ensemble dans le tissu de l'espace et du temps.

0 votes

Ne fonctionne pas sous Mono car il dépend de la chaîne d'outils VC++. Ce serait génial s'il y avait des options complètement gérées.

9voto

Malcolm Frexner Points 5393

J'ai utilisé SharpSvn. Il a été facile à intégrer et fonctionne bien pour moi. Si vous avez besoin d'un exemple de code, jetez un coup d'oeil à ce projet. https://github.com/bhank/SVNCompleteSync .

6voto

Marc Gravell Points 482669

J'utilise SharpSVN pour le moment - cela fonctionne bien pour ce dont j'ai besoin (bien que ce soit pour un processus automatisé, donc pas de travail sur l'interface utilisateur nécessaire).

2voto

  • Qu'en est-il de NSvn qui est (si je ne me trompe pas) également le noyau de ankhsvn (consultez le site tigris.org pour plus d'informations) ?

1 votes

NSvn a été remplacé par SharpSvn dans la série 2.0. Son développement a été interrompu.

0 votes

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X