Bonjour Mendix: Devenez bon avec Git avec Mendix

Cela fait longtemps que je n'ai pas produit quelque chose dans le « Bonjour Mendix" série, j'ai donc décidé de la relancer. Aujourd'hui, je parle de la façon de travailler avec Git et Mendix ensemble et comment utiliser des outils tiers comme Github pour gérer votre Mendix Référentiel d'applications dans un référentiel Git privé.

Si vous ne le saviez pas déjà, Mendix a été utiliser Git au lieu de SVN depuis la version 9.21, et ce sera la norme pour Mendix aller de l'avant. En effet, Git offre plusieurs avantages par rapport à SVN, tels que :
- Git est la norme pour le contrôle des versions de logiciels pour des entreprises comme Github, Azure et AWS.
- Git stocke une version locale du référentiel, ce qui signifie que les développeurs sont moins dépendants d'une connexion Internet haut débit car ils n'ont pas besoin de synchroniser leur travail aussi souvent.
- Avec Git, la synchronisation des modifications vers et depuis le référentiel central est plus rapide et plus fiable.
- Avec Git, vous pouvez valider vos modifications sans les transférer immédiatement vers le référentiel central. Cela vous permet de mieux contrôler ce qui est validé et quand.
- Avec Git, vous devez valider localement avant de récupérer les mises à jour, ce qui signifie que si vous avez fait une erreur lors de la résolution des conflits, vous pouvez toujours afficher les modifications que vous et vos collègues avez apportées et les résoudre, sans avoir à fusionner complètement votre code avec le serveur pour voir les conflits.
- Et enfin, vous pouvez utiliser des outils Git tiers tels que Github Desktop si vous avez besoin de gérer les choses plus étroitement.
Si votre application n'est pas encore migrée vers Git, recherchez simplement « Migrer vers Git » sur le Mendix Pages de documentation pour plus d'informations sur la façon d'effectuer le changement.
Je ne vais pas faire un guide de migration dans ce blog. Au lieu de cela, je parlerai de la façon d'utiliser activement Git dans votre Mendix Développement. Je couvrirai certaines différences entre SVN et Git lorsque vous travaillez avec des modifications sur votre projet et enfin, je vais voir comment utiliser GitHub comme Mendix dépôt git privé des applications.
Commits locaux et push vers le serveur
Comme je l'ai mentionné précédemment, la plus grande différence entre SVN et Git réside dans la manière dont les modifications sont transmises au serveur. Avec SVN, tout était synchronisé à chaque fois que vous faisiez une mise à jour ou une validation. Avec Git, vous devez valider vos modifications localement avant vous pouvez les pousser vers le serveur.
Alors, à quoi cela ressemble-t-il ? Eh bien, regardons ça dans Studio Pro.
Dans Studio Pro, les commits par défaut sont toujours envoyés automatiquement vers le référentiel, mais vous pouvez décocher cette case avant d'effectuer votre commit si vous souhaitez créer un point de sauvegarde local lorsque vous effectuez de nombreuses modifications. Ces commits locaux fonctionnent comme des commits normaux, ce qui signifie que vous pouvez toujours revenir à eux en cas de problème ou les utiliser comme point de départ pour une ligne de branche
En fait, vous pouvez le voir si vous accédez au serveur d'équipe dans le portail des développeurs de votre application. Après avoir effectué une validation locale, vous ne la verrez pas apparaître ici avec toutes les validations qui ont été poussées.
Numéros de révision
Une autre chose que vous remarquerez peut-être est que les numéros de version sont différents lorsque vous comparez SVN et Git. SVN utilise un système de numérotation séquentielle pour ses révisions, comme « 1.0 » ou « 2.0.1 ». Mais Git utilise des chaînes de hachage SHA. Bien que cela puisse sembler une différence mineure, cela signifie qu'elles peuvent être générées dans un environnement distribué et rester les mêmes sur différents clients avec des modifications identiques.
Utiliser Github comme Git tiers
Maintenant que nous avons abordé certaines des différences fondamentales entre SVN et Git, je vais vous montrer comment vous pouvez utiliser Github comme référentiel Git tiers ou Git privé.
Pour ce faire, vous aurez besoin d'un PAT ou d'un jeton d'accès personnel de Github que nous utiliserons pour autoriser Studio Pro à se connecter au dépôt. Pour en savoir plus sur la façon de procéder, recherchez simplement «Créer un PAT pour Github.” La documentation Github fournit une excellente procédure pas à pas sur la façon de procéder et il ne faut que quelques minutes pour remplir l'assistant.
Une fois que vous avez un PAT, vous devrez vous assurer que le client de bureau de Github est installé. Il est également possible d'utiliser leur ligne de commande, mais l'utilisation de leur client de bureau rend la tâche beaucoup plus facile.
Pour démarrer ce processus, nous devons créer une application dans Studio Pro. Pour cela, j'utilise la version 9.24.2 et je vais simplement créer une simple application Web vierge. Maintenant, lorsque vous créez l'application, il est important de ne pas activer les services en ligne. Pour l'instant, nous voulons uniquement que l'application existe localement sur la machine de développement. Une autre chose importante ici est de toujours créer l'application Mendix projet d'abord, parce que Mendix nécessite un répertoire ou un fichier vide pour créer un projet.
Une fois votre application créée, vous devrez créer le dépôt Github à l'aide du client de bureau. Assurez-vous de sélectionner l'option « À partir du disque dur » ici.
Maintenant, avant de pouvoir connecter Studio Pro à ce dépôt correctement, le dépôt doit contenir au moins une validation manuelle. Nous devons donc introduire quelques modifications ici. Dans mon exemple, je vais simplement modifier une copie sur une étiquette sur la page d'accueil des utilisateurs, en veillant à enregistrer les modifications dans le projet. Je peux maintenant revenir au client Github Desktop et valider cette modification.
Tout est maintenant prêt pour connecter Studio Pro à Github. Dans Studio Pro, nous pouvons sélectionner « télécharger depuis le serveur de contrôle de version ». À partir de là, sélectionnez « serveur privé » et saisissez l’adresse du dépôt de votre application. Si vous n’avez jamais saisi vos identifiants Github auparavant, il vous sera demandé de vous authentifier auprès du dépôt en saisissant un nom d’utilisateur et un mot de passe pour le dépôt.
Le nom d'utilisateur est l'adresse e-mail du compte Github qui possède le dépôt, et votre mot de passe est le jeton PAT que vous devez obtenir auprès de Github, comme expliqué précédemment. Lorsque vous saisissez vos informations d'identification, assurez-vous de sélectionner « Rester connecté » afin de ne pas avoir à saisir les détails à chaque fois que vous souhaitez valider.
Nous pouvons maintenant télécharger le projet à l'endroit où vous le conservez normalement. Mendix applications, et à ce stade, Mendix télécharge le projet depuis votre dépôt Github. Une fois le projet ouvert, vous aurez un accès complet aux options sous contrôle de version et vous pourrez continuer à développer et à appliquer vos modifications comme vous le feriez avec n'importe quelle autre application.
Découvrez notre article sur Mendix & Git:
- https://docs.github.com/en/get-started/quickstart/create-a-repo
- https://docs.mendix.com/refguide/version-control/
- https://docs.mendix.com/refguide/svn-git-differences/