Salah satu perbedaan antara svn dan git adalah kemampuan untuk mengontrol akses ke repositori. Sulit untuk membandingkan keduanya karena ada perbedaan perspektif tentang siapa yang harus diizinkan melakukan perubahan sama sekali!
Pertanyaan ini adalah tentang menggunakan git sebagai repositori terpusat untuk tim di suatu perusahaan. Asumsikan bahwa anggota tim memiliki tingkat keterampilan yang berbeda-beda, seperti halnya kebanyakan perusahaan.
Git tampaknya menganggap bahwa satu-satunya programmer terbaik Anda (paling produktif, paling berpengalaman) dipercaya untuk memeriksa kode. Jika itu masalahnya, Anda menyempatkan waktu untuk benar-benar menulis kode untuk meninjau kode orang lain untuk memeriksanya. Apakah ini berhasil? Saya benar-benar ingin memfokuskan pertanyaan ini pada apa penggunaan waktu programmer terbaik Anda, bukan pada praktik kontrol versi terbaik secara umum . Sebuah akibat wajar mungkin, apakah programmer yang baik berhenti jika sebagian besar pekerjaan mereka adalah untuk meninjau kode orang lain? Saya pikir kedua pertanyaan ini bermuara pada: apakah ulasan tersebut sepadan dengan produktivitas yang dicapai?
git
pengembang apa pun dapat memiliki repo sendiri (di komputer pribadinya) dan repo pribadi publik (yang ada di server, di belakang apache
) yang hanya dapat ditambahkan perubahannya. Perbedaannya adalah, bahwa hanya repo pengembang utama yang "diberkati", yang darinya setiap orang harus keluar. Kode checkout keluar dari repo publik pengembang dan menggabungkannya ke repo publiknya. Anda berdua telah mengetahui / mengendalikan iterasi serta kontrol sumber setiap saat.