Intégrer SVN

2015-09-14 11:29:35    azalea    8049

SVN a été intégré à ZenTao 2.2+, qui relie ZenTao et les codes, et permet aux utilisateurs de visualiser les codes. Les éléments suivants vous montreront comment intégrer SVN dans ZenTao.

1. Subversion integration

Le mécanisme basique de l'intégration de Subversion est de


Analyser les commentaires de code soumis => Obtenir la tâche liée et les ID de bug => Écrire les ID dans la base de données ZenTao.


Les utilisateurs ont deux façons de le faire. La première consiste à utiliser le crochet SVN intégré. Lorsque le code est validé, un script hook est déclenché. Il analysera les commentaires et obtiendra les ID des tâches liées, ainsi que les bugs, puis appellera l'API ZenTao et l'enregistrera dans la base de données. L'autre façon consiste à utiliser la commande LOG sur le client SVN pour obtenir tout le code validé et à l'analyser pour obtenir les ID, puis à l'enregistrer dans la base de données.

L'une ou l'autre manière a ses avantages et ses inconvénients. La deuxième méthode est utilisée dans ZenTao, car elle est plus facile à déboguer et plus pratique à déployer. En outre, il peut également analyser tous les enregistrements précédents avec plus de flexibilité.

2. Déployez le client de ligne de commande SVN sur les machines installées ZenTao

Les lignes de commande SVN sont destinées aux commandes SVN intégrées. Il s'agit de svn.exe sous Windows et svn sous Linux. La machine sur laquelle ZenTao est installé peut être indépendante de celle sur laquelle SVN est installé. Ils n’ont pas besoin d’être installés sur la même machine.


2.1 Installez SVN pour les machines Linux. Subversion peut être installé pour rhel et  centos via yum, et  apt-get dans  Debian.
2.2 The latest Windows one-click installation package has built-inLe dernier package d'installation en un clic de Windows contient svn.ex e dans le répertoire  \xampp\silksvn

2.3 Si vous installez SVN sous Windows, téléchargez slilksvn puis installez-le.

3. Configurer SVN dans ZenTao

3.1 Code

Le fichier de configuration de SVN est enregistré dans zentao/module/svn/config.php. Vous pouvez le modifier et enregistrer le fichier modifié dans enregistrer le fichier modifié dans  svn/ext/config/svn.php. Donc, s'il est mis à jour, il ne sera pas écrasé plus tard.

3.2 Configuration

 En ce qui concerne la définition des paramètres de subversion, certains concepts sont impliqués comme suit: Les paramètres ci-dessous sont impliqués dans la configuration de SVN.
  • le client SVN
  • repo: plusieurs dépôts peuvent être définis.
  • nom d'utilisateur et paramètres du repo
Maintenant, expliquons cela avec un exemple.


3.2.1 Trouvez le étiqueté avec une boîte rouge dans l'image ci-dessous.


3.2.2 Modifier le code

Modifiez les codes comme indiqué ci-dessous.

$config->svn->client  enregistrer svn.exe, les fichiers exécutables du client

$config->svn->repos[$i]['path']  le chemin pour enregistrer le code SVN
$config->svn->repos[$i]['username']   save SVN login user name; Leave it blank if you don’t need to log in.enregistrer le nom d'utilisateur de connexion SVN; Laissez ce champ vide si vous n’avez pas besoin de vous connecter.
$config->svn->repos[$i]['password']   enregistrer le mot de passe de connexion SVN

3.3 Définir plusieurs dépôts

3.3.1 Trouvez le code suivant dans le même fichier.


3.3.2 Modifier les codes

  • Supprimez “/*”and”*/“ du code et modifiez-le comme mentionné ci-dessus. Remarques: $i ++ ne peut pas être modifié.
  • Pour tout dépôt svn, copiez le code et configurez-le de la même manière.

4. Commentaire

Lors de la validation des codes dans SVN, les développeurs doivent spécifier des stories, des tâches ou des ID de bug pertinents des modifications dans les commentaires. Veuillez suivre le format ci-dessous.

  • bug#123,234, 1234 ou bug: 123,234 1234; une virgule ou un espace peuvent être utilisés comme espaces entre les identifiants; 
  • task#123.
  • bugs et tasks doivent être étiquetésd.

5. Synchronisez SVN

5.1 Reportez-vous à 8.1.1 Initialiser les scripts pour initialiser tous les scripts des lignes de commande.
5.2 Entrez  zentao/bin/ et exécutez  syncsvn.bat ou syncsvn.sh.

5.3 L'exécution est illustrée ci-dessous.


5.4 Vérifiez les bugs liés dans ZenTao.

5.5  FAQ

Les problèmes suivants sont souvent rencontrés dans l'installation du code source.


Exécutez le script pour synchroniser SVN, et l'erreur s'affiche


Exécutez la commande comme indiqué dans l'avis manuellement, et l'exécution est effectuée.


Solutions: Dans php.ini, annulez shell_exec() de  disable_functions . Redémarrez php-fpm et WebSever.

6. Déployez le cron

Lorsque toutes les commandes sont déployées, ajoutez les commandes au fichier cron. Par exemple, exécutez les tâches toutes les 5 minutes.


Solution 1: Connectez-vous à ZenTao dans le navigateur. Allez dans Admin-> Cron et activez-le. Cliquez sur Activer pour synchroniser les scripts SVN. Après avoir modifié le paramètre, suivez les étapes ci-dessous: 

Allez dans Admin-> Cron et cliquez sur Annuler => Redémarrer Apache => Allez dans Admin-> Cron et cliquez sur Démarrer.


Solution 2: utilisez la fonction cron de votre système. Allez dans Panneau de configuration-> Cron sous Windows ou utilisez crontab sous Linux.

7. Remarques

Il n'est pas recommandé d'utiliser https ou ssh, car cela implique la vérification et l'intégration des certificats https et ssh, ce qui peut être assez compliqué.


Il est compliqué de configurer SVN. Si vous ne pouvez pas le faire vous-même, pensez à notre service et contactez-nous à troy@easycorp.ltd pour en savoir plus sur le support technique =)