Alur kerja Gitlab, memaksa ulasan kode atau menggabungkan permintaan di cabang

18

Saya sedang berupaya mengimplementasikan Gitlab di perusahaan saya dengan strategi alur kerja. Ide saya adalah bahwa pengembang akan diberikan akses ke repositori tetapi, kapan pun mereka mencoba melakukan, kode mereka harus ditinjau.

Saya tahu saya dapat meminta mereka membuat cabang sebelum melakukan, dan kemudian membuat Permintaan Gabung setelah didorong ke repo. Saya masih tidak jelas tentang hal-hal tertentu ... Gagasan bahwa kita bergantung pada orang untuk membuat cabang dan kemudian permintaan gabungan tampaknya salah, apakah ada solusi yang memaksa semacam kebijakan bahwa cabang master dapat tetap bersih kecuali jika " admin "menyetujui kode yang akan digabungkan ke dalamnya. Saya telah membaca "alur kerja tim github" tetapi sepertinya tidak menawarkan solusi yang layak. Setiap saran tentang proses atau praktik terbaik Anda sendiri sangat dihargai. Terima kasih!

Mike
sumber
1
"The idea that we rely on people to create a branch and then a merge request seems faulty"Menurut saya, Anda memiliki masalah yang lebih besar daripada kurangnya fitur dalam sistem kontrol versi. Jika hanya masalah menghabiskan waktu ekstra untuk membuat cabang, lihatlah Atlassian Stash dan integrasinya dengan Jira.
toniedzwiedz
5
Terima kasih Tom, ide saya adalah dengan menegakkan kebijakan standar, saya menghilangkan ruang untuk kesalahan
Mike
2
Pertimbangkan entri blog ini dari gitlabhq about.gitlab.com/2014/09/29/gitlab-flow
spuder
1
Harap perhatikan ini: Google I / O 2009 - Myth of the Genius Programmer
borisdiakur
Anda dapat meminta mereka menggunakan garpu sendiri ....
Wildcard

Jawaban:

14

Saya sudah mulai bekerja dengan gitlab, membaca bagian BANTUAN menyediakan tata letak alur kerja. Pada titik ini, ini tampaknya menjadi solusi terbaik untuk pertanyaan saya. Jika ada yang punya pengalaman dengan alur kerja atau saran ini, silakan tambahkan info tambahan.

Dari bagian BANTUAN:

Alur kerja

  1. Proyek klon
    git clone [email protected]:project-name.git
  2. Buat cabang dengan fitur Anda
    git checkout -b $feature_name
  3. Tulis kode Komit perubahan
    git commit -am "My feature is ready"
  4. Dorong cabang Anda ke GitLab
    git push origin $feature_name
  5. Tinjau kode Anda di halaman komitmen
  6. Buat permintaan penggabungan
  7. Pimpinan tim Anda akan meninjau kode & menggabungkannya ke cabang utama

Di bagian komit dari repositori Anda, Anda sebenarnya dapat melindungi cabang yang memaksa pengembang untuk mengikuti proses di atas, membuat cabang dan mengirimkan permintaan penggabungan.

Tangkapan Layar - Melindungi Cabang

Mike
sumber
2
Apakah ada cara untuk menegakkan alur kerja ini (mis. Menggunakan cabang yang dilindungi) tetapi mengizinkan penerima tugas (tidak hanya pemimpin tim dengan hak istimewa Master / Admin) untuk menggabungkan permintaan?
Adam
Saya hanya mencoba untuk memberikan permintaan penggabungan kepada seseorang tanpa hak master dan mereka mendapatkan pesan berikut dalam permintaan penggabungan, Ini tidak dapat digabungkan secara otomatis, bahkan jika itu bisa digabung, Anda tidak memiliki izin untuk melakukannya. Jadi, sepertinya mereka tidak bisa.
Mike
Terima kasih. Saya akan mencoba Dewan Peninjau, Phabricator atau Gerrit. Apakah Anda memiliki pengalaman dengan mereka?
Adam
Tidak, maaf saya belum mencoba layanan itu. Postinglah jawaban jika Anda berhasil.
Mike
Tentu, kecuali saya lupa. BTW, saya sudah menambahkan Barkeep ke daftar periksa saya :)
Adam