Sauvegarde module sur git externe

3.2
4.0
Sauvegarde module sur git externe
0.0 0
Tags: #<Tag:0x00007f9fb44b6008> #<Tag:0x00007f9fb44b5ba8>

#1

Bonjour,

Est-il possible de paramétrer la sauvegarde GIT des modules pour utiliser un GIT externe?


#2

Oui les modules Simplicité exposés sous forme de repo Git sont clonable comme tout repo Git


#3

Merci pour votre réponse.

Est-il possible de sauvegarder directement sur un git externe ou faut-il obligatoirement faire une sauvegarde git locale + clonage vers git externe?


#4

Je ne comprends pas forcément votre question mais il n’y a rien de spécifique à Simplicité concernant Git.


#5

Je souhaite commit + push sur un git externe au lieu de le faire sur le git local


#6

Avec Git un commit est toujours local et on peut pousser sur un ou plusieurs remote

Dans le cas des repo des modules (qui sont donc localement sur le serveur) il est possible de configurer des remotes dans les settings du module et de pousser dessus sélectivement (je ne sais pas si c’est dispo en 3.2)

Une autre approche est de cloner le repo à l’extérieur et de configurer sur ce repo cloné des remotes en plus de l’origin.

Etc.

Comme toujousr avec Git de nombreux patterns sont envisageable.


#7

j’ai mis en paramètre de mon module

{
“type”: “git”,
“origin”: { “uri”: “https://github.com/roprasp/moduleresa.git” }
}

et quand je clique sur “repository git”

L’origin n’est pas celle que j’ai configurée.


#8

Si vous changez les settings après avoir créé le repo local du module je pense que ça ne marchera pas. Il aurait fallu le créer comme ça initialement (ça aurait créé le repo par clonage du remote origin)

Je vais faire qques tests et voir si on pourrait prendre en compte les changements de settings. Je vous tiens au courant.


#9

J’ai fait le test suivant (en 4.0 à jour):

  1. Je créé un repo Git vide sur GitHub (ici simplicitesoftware/mymodule)
  2. Je créé un module MyModule sur Simplicité avec les settings suivants:
{
	"type": "git",
	"origin": {
		"uri": "https://github.com/simplicitesoftware/mymodule.git",
		"username": "<un user GitHub qui a les droits d'écriture sur le repo>",
		"password": "<le password du user ci dessus>"
	}
}
  1. Je fais qques paramétrages dans le module MyModule
  2. Je clique sur Repository Git au niveau du module, je commite et je push sur le remote origin:

  3. Au niveau du repo GitHub je vois alors bien ce que j’ai commité+pushé:

#10

PS: Dans votre cas il manque les settings username et password (requis pour pouvoir pousser sur GitHub, optionnels pour puller)

Si la modif de settings ne suffit pas, il vous faudra:

  1. exporter en XML votre module et télécharger le ficher (au cas où)
  2. Supprimer le repo Git de votre module et le recréer avec les settings qui vont bien + importer le module (c’est l’import qui clone le repo distant), l’import d’un module vide affichera sans doute une erreur mais c’est pas grave
  3. Recharger le paramétrage par import XML si jamais votre paramétrage a disparu suite à l’opération ci-dessus
  4. Commiter et pusher

NB: Attention tout de même, un repo GitHub est public par défaut (les repos privés sont payants), c’est donc pas forcément le meilleur service de repo Git si vous voulez gérer des repos privés…


#11

Je n’ai plus les boutons push / pull / fetch sur mon instance bytel, ni sur formation2.

les 2 applis sont sur la version :

Simplicité® version 4.0.P13b, built on 2018-03-20 23:29 (revision 11369ccc20c30b41c0712213efa1ccdb781149b2)

edit : formation2 est sur la version 4.0.P13b
mais bytel est sur la version
Simplicité® version 4.0.P12, built on 2018-03-12 16:45 (revision 4fd20b7b8f9fbd32a2a3bc006d0a76d736a883a3)


#12

Sur quel serveur est cette instance “bytel” ? Elle est visiblement calée sur la branche release de Simplicité (la dernière révision poussée sur cette branche est bien la 4fd20b7b8f9fbd32a2a3bc006d0a76d736a883a3)

“formation2” est sur le serveur de demo/formation et est bien en autoupdate, elle est donc bien à jour sur la branche master (revision 11369ccc20c30b41c0712213efa1ccdb781149b2)

Indépendamment de la révision (car il n’y a pas eu de travaux récents sur cette partie) la presence des boutons push/pull/fetch est conditonnée au fait que le repo du module ait un ou plusieurs remotes (donc, par exemple, que ce soit un clone d’un repo distant, cf. mon exemple).


#13

bytel est sur le serveur partenor.simplicite.io

Il y avait une erreur de syntaxe dans mes paramètres, j’ai corrigé et cela fonctionne correctement, merci.


#14

Je ne vois pas d’instance bytel sur partenor (ça doit être un autre nom…)

En tout cas je confirme que ce serveur partenor est calé sur la branche release 4.0, donc même si votre instance est en autoupdate c’est normal qu’elle ne soit pas sur la même révision que l’instance sur le serveur demo qui, lui, est calé sur la branche master (i.e. le daily build)