Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision

Target

Select target project
  • Documentation/doc_interne_developpement
1 result
Select Git revision
Show changes
Commits on Source (2)
# Architecture des projets Veremes
Il y a trois grand groupes utilisés à Veremes, qui permettent de versionner et donner les droits sur l'ensemble des projets.
![veremes_groups](images/veremes_groups.jpg)
## Documentation
Ce groupe est encadré par Armand et Marot et contient l'ensemble des documentations des applications.
On y retrouve deux types de depôts :
### Modules
Les dépôts de documentation des modules utiliés par les applications et se nomment doc_module_[nom du module]
### Applications
Se nomment doc_module_[nom du module] ces dépôts contiennent à l'aide de *submodules* des copies à l'instant T des modules qu'ils contiennent.
Un même module peut être utilisé par plusieurs applications comme c'est le cas pour doc_module_vitis
### Synchronisation
Des server hooks ont étés mis en place pour qu'à chaque fois qu'un module est modifié, alors toutes les applications qui le contiennent mettent à jour leurs *submodules*.
gitlab/images/depot.jpg

284 KiB

gitlab/images/droits.jpg

207 KiB

gitlab/images/groups.jpg

227 KiB

gitlab/images/labels.jpg

207 KiB

gitlab/images/milestone.jpg

394 KiB

gitlab/images/veremes_groups.jpg

74 KiB

GitLab
====================================
.. toctree::
:maxdepth: 4
notions_gitlab
architecture_projets
# Notions GitLab
## Groupes
Sur GitLab les projets peuvent êtres répartis par groupes, ces derniers vont agir comme des dossiers conteneurs de dépôts, on peut également placer des sous-groupes qui contiendront eux aussi des dépôts.
### Interface
On peut accéder à la liste des groupes en cliquant sur le bouton **Groups** présent dans la barre suppérieure. On y distingue **Your groups** pour retourner les groupes sur lesquels l'utilisateur contribue et **Explore groups** pour visualiser les groupes de l'utilisateur plus les groupes publics.
![groups](images/groups.jpg)
### Droits
On peut dans un groupe gérer les droits des utilisateurs, alors ces droits seront appliqués sur tous les projets contenus.
Une fois dans le dépôt on distinguera les droits donnés au travers du groupe symbolisés par un lien de ceux donnés par le dépôt où on retrouvera une liste déroulante.
Vous trouverez plus de détails sur les différents droits dans la section correspondante de ce document.
![droits](images/droits.jpg)
## Dépôts
Les dépôts agissent comme des conteneurs de fichiers et permettent le versionnement, chaque dépôt est représenté par un lien unique proposé en HTTPS et SSH qui permettra d'effectuer un clone local du projet.
![depot](images/depot.jpg)
### Branches
Chaque dépôt est contitué au moins d'une branche **Master**, cette dernière est régulièrement protégée pour éviter les erreurs de rétro-compatibilité.
Pour effectuer les modifications il vaut mieux créer une branche pour y effectuer les modifications, puis créer une **merge request**.
### Merge request
Une merge request est une demande d'intégration de modifications d'une branche enfant vers une branche parent, après avoir effectué des modifications sur une branche, il faudra créer une **merge request** et l'affecter à la personne en charge du projet.
De cette manière la personne en charge du projet pourra vérifier et accepter (ou pas) la demande.
### Issue
Une issue est une tâche liée à un problème ou une évolution, l'auteur de l'issue pourra dialoguer avec le responsable de produit et suivre l'avancement de la tâche.
Quand le responsable de projet décide d'effectuer une tache il pourra lier l'issue à une merge request elle même liée à une branche, de cette manière on pourra une fois la tâche terminée vérifier les modifications effectuées.
### Labels
Les labels agiront comme des tags pour classifier les issues (bug, évolution etc..) on peut définir les labels à utiliser dans le dépôt ainsi que dans les groupes.
![labels](images/labels.jpg)
### Milestones
Un milestone est un ensemble d'issues à effectuer pour une version/projet, il permet entre autres de suivre l'avancement du projet.
![milestone](images/milestone.jpg)
## Droits
Sur GitLab il y a 5 types de droits qui peuvent entre autres effectuer les opérations ci-dessous, une documentation complète est disponible sur https://docs.gitlab.com/ee/user/permissions.html
### Guest
- Visualiser le projet
- Créer des issues
- Voir les issues y compris confidentielles
- Laisser des commentaires
### Reporter
- Pull le projet
- Assigner des issues
- Donner les labels aux issues
- Administrer les labels
- Voir les merge requests
- Manager les issues
### Developer
- Créer des branches
- Push sur les branches non protégées
- Créer/éditer les milestones
- Accepter les merge requests
### Maintainer
- Ajouter des nouveaux membres
- Accéder aux paramètres du dépôt
- Rendre les branches protégées ou non
### Owner
- Changer le niveau de visibilité
- Supprimer/renommer le projet
- Supprimer les issues
......@@ -4,7 +4,6 @@ Développement
.. toctree::
:maxdepth: 4
gitlab/index.rst
regles_developpement
participation_documentation
documentation_regles_usage
......