Salut

> Le 10/09/2019 à 18:43, cam.la...@azerttyu.net a écrit :
> >> Pour ma part, j'aimerais qu'on garde le fonctionnement actuel de la zone
> >> SVN qui permet de s'abonner à la liste de diffusion (et à son miroir
> >> newsgroup) de tous les commits de tous les plugins.
> >> Ça me parait indispensable.
> >
> > Pour le moment pas de changement sur ce point. C'est svn qui gère
> > cette partie là (IRC , liste de diffusion sont notifiés dès que le
> > commit est importé).
>
> Je pensais aussi à des plugins qui pourraient n'être QUE en git, d'un
> seul côté donc.

Ce cas n'est pas (encore) traité

> Mais tu fais peut être la synchro vers svn dans ce cas là aussi ?

Oui pour le moment la création d'un projet communautaire depuis
git.spip.net implique la traduction vers le svn.
C'est le cas par exemple des codes que j'ai déposé sur
https://git.spip.net/contrib

> D'ailleurs, cette synchro git <-> svn, elle est totalement
> bidirectionnelle et automatique ?

Oui.
Pour plus de détail :

1/ Pour les organisations communautaires (contrib/galaxie/plugin/...) :
Si c'est un plugin qui vient de la zone svn, pour être présent il doit
être importé via le script ImportOneRepository.sh (dans
https://git.spip.net/contrib/importToGitea/)
L'import est manuel et la synchronisation est ensuite transparente et
bidirectionnelle.
A noter que pour le moment c'est le dépôt svn qui fait référence.

Si c'est un plugin qui vient de git, pour être traduit vers le svn ,
il doit être traité via ExportToSvn.sh ((dans
https://git.spip.net/contrib/importToGitea/). Les commits seront
d'abord exportés vers la zone puis la synchronisation sera activée.

Dans les 2 cas, s'il y a une divergence (incident réseau, plantage
divers et varié, ....) de commits, par défaut c'est la zone qui
l'emporte.
Si pour un projet il y a une préférence git je conseille de l'indiquer
explicitement dans un LISEZ.MOI comme j'ai pu le faire sur
https://git.spip.net/contrib/importToGitea#synchronisation-bijective-

Enfin l'automatisme est différents selon le sens :
* svn > git c'est un cron qui effectue le report des commits (ce n'est
pas instantannée)
* git > svn c'est au git push que la synchronisation est effectuée
pour chaque commit.
Remarque : Avant de pousser les commits vers le svn, il y a contrôlet
et import du svn. On a alors un classique local git pull --rebase ,
comme si un autre utilisateur avait commité entre temps du code)


2/ Pour les forks et projets personnels
Ce sont des dépôts git standards. Il ne seront pas traduits en svn ni
dans un sens ni dans l'autre.


Km
----
spip-zone@rezo.net - https://listes.rezo.net/mailman/listinfo/spip-zone

Répondre à