Maison > outils de développement > git > le corps du texte

Comment faire modifier la liste des fichiers par MR dans gitlab

PHPz
Libérer: 2023-03-31 10:35:53
original
1976 Les gens l'ont consulté

La révision de code dans GitLab est un lien très important, parmi lesquels Merge Request (MR) est une méthode très importante. Une fois que l'éditeur de code a soumis un MR sur GitLab, vous pouvez discuter et modifier les demandes sur la page MR.

Lorsque l'on parle de MR, connaître la liste des fichiers modifiés dans MR peut aider à mieux comprendre et évaluer les modifications apportées par les développeurs. Cet article vous expliquera comment modifier la liste des fichiers par MR dans GitLab.

Méthode 1 : obtenez-le via la ligne de commande

Tout d'abord, vous devez cloner le dépôt localement.

Ensuite, nous devons installer l'API de GitLab. Vous pouvez l'installer en utilisant pip de la manière suivante :

pip install python-gitlab
Copier après la connexion

Une fois l'installation terminée, nous devons obtenir l'ID du dépôt et le jeton privé. Vous pouvez obtenir le jeton privé en visitant la page d'accueil du dépôt --> Cliquez sur les trois points dans le coin supérieur droit --> Visitez « Paramètres » -->

Après avoir obtenu le token privé, vous devez définir les variables d'environnement requises par l'API GitLab :

export GITLAB_PRIVATE_TOKEN=<your_access_token>
export GITLAB_URL=https://<your_gitlab_server>/api/v4
Copier après la connexion

Maintenant, nous pouvons utiliser la commande suivante pour obtenir les fichiers modifiés dans MR :

gl = gitlab.Gitlab(os.environ['GITLAB_URL'], private_token=os.environ['GITLAB_PRIVATE_TOKEN'])
project = gl.projects.get(<project_id>)
merge = project.merge_requests.get(<merge_request_id>)
changes = merge.changes()
files = changes.get('changes')
for file in files:
    print(file['new_file']['path'])
Copier après la connexion

Vous pouvez modifier le &lt dans l'extrait de code Remplacez ;project_id> et <merge_request_id> par des nombres réels. <project_id><merge_request_id>替换为实际的数字。

方法二:通过GitLab API获取

首先,你需要获取到repo的ID和私有token,这个过程请参考方法一。

下面,我们将向你介绍如何使用GitLab API来获取MR中的修改文件。

我们可以发送以下请求(请替换<your_gitlab_server><project_id><merge_request_id>

Méthode 2 : Obtenir via l'API GitLab

Tout d'abord, vous devez obtenir l'ID du dépôt et le jeton privé. Veuillez vous référer à la méthode 1 pour ce processus.

Ci-dessous, nous allons vous présenter comment utiliser l'API GitLab pour obtenir des fichiers modifiés dans MR.

Nous pouvons envoyer la demande suivante (veuillez remplacer <your_gitlab_server>, <project_id>, <merge_request_id> et d'autres informations) :

GET https://<your_gitlab_server>/api/v4/projects/<project_id>/merge_requests/<merge_request_id>/changes
Copier après la connexion
La réponse ressemblera à ceci :

{
  "changes": [
    {
      "old_path": "Old file path",
      "new_path": "New file path"
    },
    ...
  ]
}
Copier après la connexion
Nous pouvons utiliser le code Python suivant dans notre code pour analyser la réponse et obtenir la liste des fichiers :🎜
import os
import requests

url = f"https://<your_gitlab_server>/api/v4/projects/<project_id>/merge_requests/<merge_request_id>/changes"
response = requests.get(url, headers={"PRIVATE-TOKEN": "<your_access_token>"})
changes = response.json()["changes"]

for change in changes:
    print(change["new_path"])
Copier après la connexion
🎜Vous pouvez modifier le code qui génère la liste des fichiers en fonction de votre besoins. 🎜🎜Résumé🎜🎜Dans cet article, nous vous avons présenté comment modifier la liste des fichiers par MR via la ligne de commande et l'API GitLab. En fonction de vos besoins, vous pouvez choisir n'importe quelle méthode. Quelle que soit la méthode que vous choisissez, elle vous aidera à mieux comprendre les changements apportés à la révision du code. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!