2010-05-08 6 views
7

Je suis en train de développer un navigateur d'interface Web personnalisé pour les référentiels Subversion avec C#/ASP.NET et SVNKit (converti en assemblys .NET à l'aide d'IKVM.NET). Est-il propre propre à ajouter localement un nouvel utilisateur subversion (qui est ajouté par l'administrateur) en utilisant le code C#?Ajout d'un nouvel utilisateur subversion par programmation avec C#

Répondre

4

Je ne peux pas offrir C#, mais je doute que le langage d'implémentation ait un impact sur les choses. Tout ce que vous avez à faire est de lire/écrire dans un fichier texte. Les modifications apportées aux fichiers de configuration ont lieu immédiatement (contrairement à Apache). C'est très pas compliqué.

Si vous pop dans le dossier conf dans votre référentiel (pas votre copie de travail), vous trouverez trois fichiers:

  • svnserve.conf
  • authz
  • passwd

svnserve.conf contrôle le fichier d'authentification du repo (passwd), qui est désactivé par défaut. Pour activer vous supprimez simplement la ligne authentification basée sur des comptes en .conf qui ressemble à:

password-db = passwd 

Vous aussi voudrez probablement modifier:

anon-access = none 
auth-access = write 

Comme le commentaire dans les notes de fichier de configuration, vous pouvez spécifier un chemin vers un fichier externe. C'est peut-être ce que vous voulez dire par un moyen "propre" de modifier les choses. Placez simplement votre fichier passwd à l'extérieur du repo et modifiez le svnserve.conf du repo pour le pointer explicitement. Grâce à cette technique, vous pouvez contrôler l'accès à plusieurs repos à partir d'un seul fichier passwd. Par exemple:

password-db = /home/user/svn-users.conf 

Le fichier de mot de passe lui-même ressemble à ceci:

[users] 
user1 = user1pass 
user2 = user2pass 

Les commentaires dans les fichiers par défaut devrait être assez clair sur la façon de faire avancer les choses vers le haut et en cours d'exécution, mais si vous voulez plus d'informations , le TortoiseSVN manual a un excellent guide de configuration du serveur. (Il y a aussi le SVN Redbean book, mais j'ai trouvé Tortoise un peu plus clair.)

Questions connexes