Faire un don ! | | style | statistiques | contactez-nous | plan | lettre d'information

Retourner aux forums || Retourner au forum general.general

general.general : [SVN][AnkhSVN] Comment mettre en place un lock-modify-unlock

Posté par Midilaïr (page perso, ) le 30 août 2007
Salut,

Et oui, je reviens à la charge avec mon problème de gestionnaire de version.
Pour des raisons de politiques interne et avec un peu de pression de ma part, on va utiliser Subversion pour faire un minimum de versionning en interne. Le problème, c'est qu'on m'impose d'utiliser un modèle lock-modify-unlock au lieu du copy-modify-merge par défaut.

Donc ma problématique est de configurer Ankh ou subvervsion pour automatiser certaines actions telles que :
- lock entraîne un check-out du fichier et un lock
- unlock entraîne une demande de commentaire, un commit et un unlock

Un peu à la manière de SourceSafe, où l'ouverture d'un fichier libéré demande si on veut l'utiliser en copie de travail ou en lecture seule, mais en rajoutant une demande de saisie de commentaire pour expliquer ce qu'on a modifié.

Merci de votre aide, je commence à ronger la table tellement ça me gave.

PS: pas la peine de me dire d'utiliser SourceSafe pour l'utilisation barbare que je fais de Subversion, y a trop d'outil de développement différent qu'on utilise et qui n'ont pas de plugin SourceSafe.

> Lire le message (5 commentaires, moyenne: 2,8).

Cette discussion est archivée, il n'est plus possible de laisser des commentaires.

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.

je ne sais pas pour toi

Posté par NeoX () le 30/08/2007 à 12:32. (lien). Évalué à 1.

mais sur internet/google

je trouve qu'il existe la commande
svn lock fichier
et svn unlock fichier

qui semblerait correspondre à ton attente.

ensuite il faut peut-etre scripter pour avoir quelque chose qui ressemblerait à
script.sh :


svn co $1
svn lock $1
vim/gedit/emacs/kate $1
svn unlock $1
svn commit $1



--
Apprendre par les autres, c'est bien.
Apprendre par soi-meme (RTFM, man, et notre ami google) c'est mieux

property svn:needs-lock

Posté par Bozo le clown () le 30/08/2007 à 12:56. (lien). Évalué à 4.

Tu trouveras ici une solution à ton problème
http://blogs.open.collab.net/svn/2007/07/from-the-questi.htm(...)

  • [^]Re: property svn:needs-lock

    Posté par Bozo le clown () le 30/08/2007 à 13:08. (lien). Évalué à 4.

    Et concernant ta problématique d'enchainement de commande tu peux peut-être utiliser hooks pré-unlock qui lance automatiquement le commit.
    Pour le lock tu n'as besoin pas d'un checkout mais d'un update du fichier

    Pour les hooks:
    http://www.clever-age.com/veille/blog/utilisation-des-hooks-(...)

    le property svn:needs-lock te peremts de placer toius les fichiers non réservés en lecture seule et cahaque utilsateur est contraint de reserver le fichier avant de pouvoir le modifier.

    Avec ces 3 trucs tu devrais pouvoir t'en sortir

    • [^]Re: property svn:needs-lock

      Posté par Midilaïr (page perso, ) le 30/08/2007 à 14:16. (lien). Évalué à 2.

      Merci à tous les deux.

      Maintenant, il faut le faire ...

      Donc, je vous explique ce à quoi j'en suis arrivé après avoir lu tout cela.

      Il me faut donc 3 hooks :
      - post-lock : lance un update du fichier
      - pre-commit : teste la présence d'un commentaire de commit
      - post-commit : lance un unlock

      (facultatif) - post-unlock : lance un update du fichier

      et je dois mettre en place la propriété svn:needs-lock sur tous les fichiers en auto-props, ce que je ne sais pas encore faire (j'arrive même pas à la mettre sur un fichier de base)

      Qu'en pensez vous ?

      • [^]Re: property svn:needs-lock

        Posté par Bozo le clown () le 30/08/2007 à 14:32. (lien). Évalué à 3.

        Ca ne me parait pas mal.
        Fais nous part de ton retour d'expérience et n'hésites pas à diffuser tes scripts ... dans la rubrique Astuces par exemple.
        http://trollfr.org/tips/
        Ca pourra servir à d'autres

Revenir en haut de page || Retourner aux forums || Retourner au forum general.general