diff --git a/gitlab/images/depot.jpg b/gitlab/images/depot.jpg new file mode 100644 index 0000000000000000000000000000000000000000..643cf00993941dbc4b506782232a65b8afc6a69f Binary files /dev/null and b/gitlab/images/depot.jpg differ diff --git a/gitlab/images/droits.jpg b/gitlab/images/droits.jpg new file mode 100644 index 0000000000000000000000000000000000000000..210babd51c5389bc71092e11adfd269eac7b14ff Binary files /dev/null and b/gitlab/images/droits.jpg differ diff --git a/gitlab/images/groups.jpg b/gitlab/images/groups.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5fb99ed36f97da82ba2e8f22eb4ff672e93709ea Binary files /dev/null and b/gitlab/images/groups.jpg differ diff --git a/gitlab/images/labels.jpg b/gitlab/images/labels.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c14308d25440f1bc6985001b01afbe8296efff74 Binary files /dev/null and b/gitlab/images/labels.jpg differ diff --git a/gitlab/images/milestone.jpg b/gitlab/images/milestone.jpg new file mode 100644 index 0000000000000000000000000000000000000000..fe111c6a966212e83415bee63056f778ae61b840 Binary files /dev/null and b/gitlab/images/milestone.jpg differ diff --git a/gitlab/index.rst b/gitlab/index.rst new file mode 100644 index 0000000000000000000000000000000000000000..e1d7570cbf00ee1c4dcc69fc1909912981ba66f7 --- /dev/null +++ b/gitlab/index.rst @@ -0,0 +1,7 @@ +GitLab +==================================== + +.. toctree:: + :maxdepth: 4 + + notions_gitlab diff --git a/gitlab/notions_gitlab.md b/gitlab/notions_gitlab.md new file mode 100644 index 0000000000000000000000000000000000000000..abdbc4aacfdcba69a6112c23718edbd9e1f120b7 --- /dev/null +++ b/gitlab/notions_gitlab.md @@ -0,0 +1,97 @@ +# 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. + + + +### 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. + + + + +## 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. + + + +### 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. + + + +### Milestones + +Un milestone est un ensemble d'issues à effectuer pour une version/projet, il permet entre autres de suivre l'avancement du projet. + + + +## 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