Rumah  >  Artikel  >  alat pembangunan  >  Mengapa syarikat menggunakan gitlab? Apakah rupa aliran kerja?

Mengapa syarikat menggunakan gitlab? Apakah rupa aliran kerja?

青灯夜游
青灯夜游ke hadapan
2023-03-23 19:49:072100semak imbas

Mengapa syarikat menggunakan gitlab dan bukannya github dan gitee? Artikel berikut akan memperkenalkan sebab dan bercakap tentang aliran kerja Gitlab saya harap ia akan membantu semua orang!

Mengapa syarikat menggunakan gitlab? Apakah rupa aliran kerja?

Apa itu

Istilah rasmi:

GitLab ialah alat pengurusan rangkaianberasaskan Gitgudang yang dibangunkan oleh GitLabInc menggunakan lesen MIT dan mempunyai wiki dan fungsi penjejakan isu. Gunakan Git sebagai alat pengurusan kod dan bina perkhidmatan web berdasarkan ini.

GitLab dibangunkan oleh pengaturcara Ukraine Dmitriy Zaporozhets dan Valery Sizov Ia ditulis dalam bahasa Ruby. Kemudian, beberapa bahagian telah ditulis semula dalam bahasa Go. Sehingga Mei 2018, syarikat itu mempunyai kira-kira 290 ahli pasukan dan lebih daripada 2,000 penyumbang sumber terbuka. GitLab digunakan oleh organisasi seperti IBM, Sony, Pusat Penyelidikan Jülich, NASA, Alibaba, Invincea, O'Reilly Media, Leibniz-Rechenzentrum (LRZ), CERN, SpaceX dan banyak lagi.

GitLab mempunyai fungsi yang serupa dengan Github, dengan keupayaan untuk menyemak imbas kod sumber, mengurus kecacatan dan ulasan. Ia menguruskan akses pasukan kepada repositori, memudahkan untuk menyemak imbas versi komited dan menyediakan perpustakaan sejarah fail. Ahli pasukan boleh berkomunikasi menggunakan program sembang ringkas terbina dalam (Wall). Ia juga menyediakan fungsi pengumpulan coretan kod untuk penggunaan semula kod yang mudah.

Mengapa

Mengapa syarikat menggunakan gitlab dan bukannya github dan gitee?

Apabila terdapat lebih banyak versi projek dan lebih banyak pembangun, pengurusan git mudah masih mempunyai banyak masalah Di satu pihak, pembangun mempunyai terlalu banyak kuasa, dan sebaliknya, kakitangan operasi dan penyelenggaraan tidak memahami proses pembangunan kami dengan baik, jadi Berfikir tentang menggunakan alat yang lebih baik untuk mengurus projek. Jadi saya terfikir gitlab.

CI/CD

CI/CD di sini sebenarnya merujuk kepada penyepaduan berterusan (CI) dan penghantaran berterusan dan penggunaan berterusan (CD) adalah perkara yang dilakukan oleh jurutera perisian hari Proses penghantaran salinan kod yang dikemas kini secara kerap ke lokasi yang dikongsi. Semua kerja pembangunan disepadukan pada masa atau acara yang dijadualkan, dan kemudian kerja ujian dan binaan adalah automatik. Melalui CI, ralat yang berlaku semasa proses pembangunan boleh ditemui dalam masa, yang bukan sahaja mempercepatkan keseluruhan kitaran pembangunan, tetapi juga menjadikan jurutera perisian bekerja dengan lebih cekap. Dan CD bermaksud Penghantaran Berterusan (CD), bahagian kedua teka-teki dalam mencipta aplikasi berkualiti tinggi. CD ialah disiplin pembangunan perisian yang menggunakan teknologi dan alatan untuk menyampaikan kod peringkat pengeluaran dengan cepat. Oleh kerana kebanyakan kitaran penghantaran adalah automatik, penghantaran ini boleh diselesaikan dengan cepat.

Kami akan memperkenalkan aliran kerja CI/CD secara terperinci kemudian

Kawalan kebenaran dan kerjasama

Cara paling mudah untuk bekerjasama dalam projek GitLab kaedahnya adalah untuk memberikan kebenaran tolak terus kepada kolaborator ke repositori git. Anda boleh menambahkan penulis pada projek melalui bahagian "Ahli" pada tetapan projek dan mengaitkan kolaborator baharu ini dengan tahap akses (. Dengan memberikan kolaborator "Pembangun" atau lebih tinggi Dengan tahap akses, pengguna ini boleh komited terus ke repositori atau cawangan tanpa sebarang sekatan

.

Cara lain untuk menjadikan kerjasama lebih terpisah adalah dengan menggunakan permintaan gabungan. Kelebihannya ialah ia membenarkan mana-mana kolaborator yang boleh melihat projek menyumbang kepada projek secara terkawal. Kolaborator dengan akses langsung boleh membuat cawangan, komited dengan cawangan ini atau membuka permintaan gabungan untuk menguasai atau mana-mana cawangan lain. Kolaborator yang tidak mempunyai kebenaran tolak pada repositori boleh "membuat" repositori, komited pada salinan dan kemudian membuka permintaan gabungan daripada salinan itu ke projek utama. Model ini memberikan pemilik projek kawalan sepenuhnya ke atas komitmen yang dibuat kepada repositori dan apabila sumbangan daripada kolaborator yang tidak diketahui dibenarkan. (Ini agak serupa dengan github, tetapi pada masa ini perpustakaan persendirian github dikenakan bayaran)

Permintaan dan isu penggabungan dalam GitLab merupakan bahagian utama perbincangan yang telah lama wujud. Setiap permintaan penggabungan membenarkan perbincangan pada baris tempat perubahan itu dicadangkan (yang membolehkan semakan kod ringan), serta topik keseluruhan. Kedua-duanya boleh diberikan kepada pengguna, atau disusun ke dalam antara muka pencapaian.

Bahagian ini tertumpu terutamanya pada ciri berkaitan Git dalam GitLab, tetapi sebagai sistem yang matang, GitLab menyediakan banyak produk lain untuk membantu anda bekerjasama, seperti wiki projek dan alatan penyelenggaraan sistem. Salah satu perkara yang menarik tentang GitLab ialah apabila pelayan siap dan berjalan, anda jarang perlu melaraskan fail konfigurasi atau SSH ke dalam pelayan kebanyakan pengurusan dan penggunaan harian boleh dilakukan dalam antara muka penyemak imbas.

Pengenalan kepada aliran kerja Aliran Git

Secara umumnya, projek dalam perusahaan dibangunkan oleh beberapa orang pada masa yang sama, jadi cara mengurus cawangan git menjadi penting soalan.

Jadi di sini, kami perlu memperkenalkan aliran kerja aliran git kami.

Mari mulakan dengan persekitaran berjalan kod. Secara umumnya, persekitaran di mana kod dijalankan, pasukan syarikat akan mempunyai sekurang-kurangnya satu daripada persekitaran ini:

    Persekitaran pembangunan setempat: Diuji oleh pembangun, Ia boleh menjadi pelayan statik yang digunakan secara tempatan Sudah tentu, ia juga boleh menjadi persekitaran yang serupa dengan menjalankan pelayan npm Kod yang berjalan dalam persekitaran setempat boleh menjadi sebarang
  • persekitaran pembangunan pembangun: Persekitaran ini digunakan untuk pembangunan. Ia digunakan menggunakan kod yang dihasilkan oleh cawangan pembangunan Ia adalah satu-satunya
  • persekitaran ujian & pra-keluaran: Persekitaran ini digunakan menggunakan kod yang dihasilkan oleh keluaran cawangan pembangunan .
  • persekitaran pengeluaran dalam talian: Persekitaran ini digunakan menggunakan kod yang dihasilkan oleh induk cawangan pembangunan Satu-satunya model cawangan git awam
  • yang sepadan ialah Strategi cawangan sepadan
  • .

seperti ini

tuan: cawangan perlindungan, sepadan Ia adalah cawangan persekitaran pengeluaran

    keluaran: cawangan perlindungan Semua cawangan yang dibangunkan akan memohon untuk digabungkan ke dalam cawangan keluaran dan diberikan kepada penguji untuk ujian
  • ciri-*: Cawangan fungsi, pembangunan fungsi khusus
  • dev. /test-*: cawangan pembangunan & cawangan kotor, sepadan dengan persekitaran pembangunan yang dikongsi oleh semua orang, kod di atas akan digunakan ke persekitaran pembangunan awam , untuk pembangun melakukan ujian kendiri dan menghadapi beberapa penyahpepijatan harian dan bukan harian
  • Pengenalan aliran kerja

Terima Selepas menyemak dokumen keperluan, peruntukkan setiap orang atau kumpulan kecil untuk pembangunan fungsi mata fungsi daripada induk.

  • Semasa pembangunan, sebagai tambahan kepada ujian secara tempatan, Jika perlu, ia akan digabungkan ke dalam cawangan dev dan diuji dalam persekitaran pembangunan awam

  • Kerana semasa perkembangan fungsi, hotfixes boleh digabungkan ke dalam tuan dan kod yang digabungkan, adalah kebiasaan untuk menggabungkan tuan untuk mencegah konflik. ujian selesai, mohon penggabungan ke dalam keluaran Selepas penggabungan berjaya, gunakannya ke persekitaran ujian dan maklumkan penguji untuk melakukan ujian

  • Selepas ujian lulus, keluaran. aplikasi digabungkan ke dalam induk dan bersedia untuk pergi ke dalam talian

  • Jika ujian gagal, cantumkan semula selepas fungsi diubah suai

  • Padam titik fungsi yang sepadan selepas pelancaran yang berjaya dan stabil, dan dev menggabungkan mata induk terkini 🎜>)

Atas ialah kandungan terperinci Mengapa syarikat menggunakan gitlab? Apakah rupa aliran kerja?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:juejin.cn. Jika ada pelanggaran, sila hubungi admin@php.cn Padam