Pull Request Gitea
Cet article présente la manipulation des pull requests
pour un dépôt sous Gitea
.
Votre avis
Nobody voted on this yet
|
|
Consultation
Les pull requests
sont accessibles depuis l'onglet Pull Requests
sur le dépôt consulté. Le nombre de pull requests
disponibles est affiché suite au libellé de l'onglet.

Le bouton Pull Requests
dans le bandeau supérieur de l'application permet de visualiser l'ensemble des pull requests
de l'instance.

Par défaut, l'option Open
est sélectionnée pour ne présenter que celles qui sont en attente de validation et dans l'organisation sélectionnée à partir de la liste de choix sur la gauche.
L'option Closed
permet de visualiser toutes celles qui ont été validées.

A noter qu'une facette est disponible sur le bandeau latéral de gauche, pour filtrer l'affichage en fonction d'un dépôt de l'organisation sélectionnée.
Paramétrages
Attention, il est nécessaire de configurer les options pour les pull requests
au niveau des paramètres du dépôt. Si aucune option n'est mise en place, un message d'erreur sera alors affiché lors de la création, avec le message This pull request can not be merged as no merge options are enabled
.

Il faut afficher les paramètres du dépôt et se rendre dans la zone Pull Requests
de la section Advanced Settings
. L'option Enable pull requests to accept public contributions
est activée, entraînant la mise à disposition d'options supplémentaires. Dans le cadre de cet article, seule l'option Allow to squash commits before merging
est activée.

Création
Depuis l'onglet Pull Request
, il est possible de demandé la création d'une nouvelle à partir du bouton New Pull Request
.

Un formulaire est alors affiché pour spécifier la branche faisait l'objet de la pull request
, ainsi que la branche cible.

A noter, la première liste désigne la branche cible, qui est donc a branche par défaut, alors que la seconde est utilisée pour spécifier la branche à partir de laquelle les modifications sont prises.
Il faut alors choisir les branches et spécifier le titre de la pull request
. Dans la copie d'écran suivante, une demande est réalisée pour intégrer les modifications de la branche Ssh-Apache
dans la branche develop
avec pour titre Store ssh and Apache configuration
. Une description peut également être saisie pour décrire le contenu de la demande.

Il est également possible de charger des pièces jointes à la pull request, en glissant le(s) fichier(s) ou en cliquant sur la zone en dessous de la description.

En dessous du formulaire, deux listing sont présentés. Le premier reprend l'ensemble des commits
avec un lien sur la description de celui-ci. La seconde liste permet de visualiser l'ensemble des fichiers impactés, avec les modifications entre les deux branches.

Une fois complété, il suffit de cliquer sur le bouton Create Pull Request
.

Un message de succès est alors affiché si la création est validée.

La création d'une pull request peut également s'effectuer directement depuis la consultation du code de la branche, à l'aide du bouton à la gauche de la liste de choix des branches.

Le principal avantage est que la branche source est automatiquement sélectionnée, et il ne peut y avoir de confusion dans l'ordre d'affichage des listes de sélection.
Merge
Une fois la pull request
créée, et potentiellement affecté, il suffit de l'ouvrir depuis l'onglet Pull Requests
ou depuis la page spécifique. Si aucun conflit n'est constaté entre les branches source et cible, le message This pull request can be merged automatically
.

Les options de merge
dépendent de la configuration du dépôt. Dans le cadre de cet article, l'option Squash and merge
est utilisée afin de n'avoir qu'un seul commi
suite à l'intégration de la pull request
. Une zone définition du merge
est alors présenté où il faut spécifier un titre, rempli par défaut avec le titre de la pull request
, et une description optionnelle.

Il suffit de cliquer sur le bouton Quash and merge
pour terminer l'intégration de la pull request
, entraînant l'affichage du message This pull request has been merged successfully
.

Suppression branche
Une pull request est généralement réalisée depuis une branche "temporaire", utilisée uniquement pour développer les modifications. Ces branches n'ont pas lieu de persister dans le temps. C'est pourquoi le bouton Delete Branch XXX
est disponible suite à la validation de la pull request
. Il faut cliquer dessus et un message de confirmation est alors présenté.

En cas de validation, celle-ci est supprimée et l'étape USER deleted branch XXX
est ajoutée dans l'onglet Conversation
.
