Rumah  >  Artikel  >  alat pembangunan  >  Bagaimana untuk mendapatkan senarai fail yang diubah suai oleh MR dalam gitlab

Bagaimana untuk mendapatkan senarai fail yang diubah suai oleh MR dalam gitlab

PHPz
PHPzasal
2023-03-31 09:03:321895semak imbas

Semakan kod dalam GitLab ialah pautan yang sangat penting, antaranya Merge Request (MR) ialah kaedah yang sangat penting. Apabila editor kod menyerahkan MR pada GitLab, anda boleh berbincang dan menukar permintaan pada halaman MR.

Apabila membincangkan MR, mengetahui senarai fail yang diubah suai dalam MR boleh membantu lebih memahami dan menilai perubahan yang dibuat oleh pembangun. Artikel ini akan memperkenalkan anda cara mendapatkan senarai fail yang diubah suai oleh MR dalam GitLab.

Kaedah 1: Dapatkannya melalui baris arahan

Pertama, anda perlu mengklon repo secara setempat.

Seterusnya, kita perlu memasang API GitLab. Anda boleh menggunakan pip untuk memasang dengan cara berikut:

pip install python-gitlab

Selepas pemasangan selesai, kami perlu mendapatkan ID repo dan token peribadi. Anda boleh mendapatkan token peribadi dengan melawati halaman utama repo -->

Selepas mendapatkan token persendirian, anda perlu menetapkan pembolehubah persekitaran yang diperlukan oleh API GitLab:

export GITLAB_PRIVATE_TOKEN=<your_access_token>
export GITLAB_URL=https://<your_gitlab_server>/api/v4

Sekarang, kita boleh menggunakan arahan berikut untuk mendapatkan fail yang diubah suai dalam 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'])

Anda boleh menggantikan <project_id> dan <merge_request_id> dalam coretan kod dengan nombor sebenar.

Kaedah 2: Dapatkan melalui API GitLab

Mula-mula, anda perlu mendapatkan ID repo dan token peribadi Sila rujuk Kaedah 1 untuk proses ini.

Di bawah, kami akan memperkenalkan anda cara menggunakan API GitLab untuk mendapatkan fail yang diubah suai dalam MR.

Kami boleh menghantar permintaan berikut (sila gantikan <your_gitlab_server>, <project_id>, <merge_request_id> dan maklumat lain):

GET https://<your_gitlab_server>/api/v4/projects/<project_id>/merge_requests/<merge_request_id>/changes

Tanggapan akan kelihatan seperti ini:

{
  "changes": [
    {
      "old_path": "Old file path",
      "new_path": "New file path"
    },
    ...
  ]
}

Kami boleh menggunakan kod Python berikut dalam kod untuk menghuraikan respons dan mendapatkan senarai fail:

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"])

Anda boleh mengubah suai kod yang mengeluarkan senarai fail mengikut keperluan anda.

Ringkasan

Dalam artikel ini, kami memperkenalkan anda cara untuk mendapatkan senarai fail yang diubah suai oleh MR melalui baris arahan dan API GitLab. Bergantung pada keperluan anda, anda boleh memilih mana-mana kaedah. Tidak kira kaedah yang anda pilih, kaedah ini akan membantu anda memahami dengan lebih baik perubahan dalam semakan kod.

Atas ialah kandungan terperinci Bagaimana untuk mendapatkan senarai fail yang diubah suai oleh MR dalam gitlab. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn