Git commit mesej dengan ChatGPT

Komit mesej dalam Git sering diabaikan. Ramai yang melihatnya sebagai kejahatan yang perlu untuk menyelamatkan perubahan. Mesej komitmen yang bermakna ialah faktor penting untuk kejayaan projek: Mesej ini memastikan kebolehkesanan perubahan yang baik, kerjasama yang cekap dalam pasukan dan penyelesaian masalah yang lebih pantas. Tiada sebab untuk memastikan mesej komit disediakan secara automatik dengan bantuan AI.


Dengan bantuan kononnya Cangkuk Adalah mungkin untuk melaksanakan skrip, contohnya untuk ujian automatik atau semakan kod, untuk acara tertentu semasa aliran kerja Git. Pihak pelanggan prepare-commit-msg-Cakuk menjadi serta-merta sebelum ini dilaksanakan selepas membuka editor komit. Sebagai contoh, skrip bash berikut mesti berada dalam folder ~/git-template/hooks/prepare-commit-msg difailkan:

0d311d3e3743f65bd1f7fa370c3b3848

Kemudian tambahkan Kunci API OpenAI dalam barisan \(4\) dan mengubah suai model ChatGPT yang digunakan dalam baris \(5\) (dalam contoh kami gpt-4o). Kami kemudian membuat skrip boleh dilaksanakan chmod +x ~/git-template/hooks/prepare-commit-msg dan bertaruh dengan git config --global core.hooksPath ~/git-template/hooks direktori lalai untuk cangkuk Git dalam konfigurasi Git global.

Penting: Ini bermakna anda tidak perlu lagi membuat cangkuk Git tempatan .git/hooks, tetapi dalam ~/git-template/hooks Jika anda ingin terus mempunyai cangkuk khusus projek, anda boleh git config core.hooksPath .git/hooks && ln -s ~/git-template/hooks/prepare-commit-msg .git/hooks/prepare-commit-msg dalam projek masing-masing. Jika anda ingin menyahaktifkan skrip sekali lagi, hanya git config --global --unset core.hooksPath.

Skrip menjana untuk perbezaan Semua fail berperingkat secara automatik menerima templat yang sesuai untuk mesej komit: git add -A . && git commit. Sebagai alternatif, anda juga boleh menghantar mesej kosong ("."), yang kemudiannya akan ditimpa secara automatik: git add -A . && git commit -m "." && git push – Tetapi berhati-hati: Pengesahan mesej tidak lagi boleh dilakukan di sini.

Model AI kini sangat maju sehingga mereka boleh menjana mesej komit automatik yang sangat masuk akal berdasarkan perubahan yang dibuat. Dengan melaraskan gesaan (bermula pada baris \(13\) anda boleh mengoptimumkan lagi pulangan dan menyesuaikannya dengan keperluan anda. Secara kebetulan, skrip juga berfungsi dalam alat UI Git seperti Tower dan SmartGit .

Belakang