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!