Saya perlu bekerja dengan 4-5 programmer pada aplikasi PHP yang cukup rata-rata menggunakan codeigniter. Kami berada di 5 lokasi berbeda di satu kota, dan semua programmer tidak terlalu berpendidikan dan saya berasumsi bahwa kebanyakan dari mereka tidak pernah menggunakan sistem kontrol versi.
Bisakah Anda merekomendasikan beberapa platform yang sangat mudah masuk untuk berkolaborasi pada proyek seperti ini? Saya sedang berbicara tentang sesuatu yang hanya sedikit lebih canggih dari folder dropbox bersama.
Jawaban:
Anda sudah tahu jawabannya
Kontrol versi dirancang untuk memecahkan masalah ini . Jika pengembang Anda tidak mau belajar menggunakan praktik pengembangan standar ini, Anda mungkin perlu mempertimbangkan kembali pengembang Anda. Apa jenis perangkat lunak yang akan mereka hasilkan jika mereka menunjukkan keengganan terhadap praktik standar yang diterima, serta keengganan untuk mempelajari hal-hal baru?
Saya sarankan agar mereka membaca Pro Git dan mengatur repositori git pribadi untuk tim Anda.
sumber
... FTP
Ok, ini adalah cara saya mulai berkolaborasi, menghubungkan Notepad ++ ke FTP, membuat cadangan omong kosong setiap 10 menit di folder berganti nama benar-benar tersedot, jika Anda melakukan ini, demi proyek Anda setidaknya menggunakan kontrol versi di server.
IDE online
Cloud9 sangat bagus dan memiliki pengeditan serentak, namun, Anda harus memiliki lebih dari 1 ruang kerja pribadi untuk bekerja dengan tim Anda, tetapi itu sepadan.
... coba Mercurial
Jika Anda tidak menemukan Git cukup mudah didekati oleh rekan kerja Anda, cobalah Mercurial dengan TortoiseHG, yang merupakan klien GUI untuk Mercurial. Ini akan memakan waktu dua menit untuk pengaturan dan lebih sedikit untuk mulai menggunakannya.
Mintalah mereka menggunakan GUI, mereka hanya perlu belajar menggunakan 4 tombol (tarik, perbarui, komit, tekan) dan pelajari 2 atau 3 konsep untuk menyimpan dan berbagi pekerjaan mereka.
Minta mereka mendaftar di bitbucket . Buat repositori untuk proyek Anda, dan minta mereka membayarnya sehingga mereka dapat bekerja di mirror repositori mereka sendiri dan dengan cara itu mereka tidak harus berurusan dengan penggabungan. Anda melakukan integrasi dan hanya meminta mereka untuk mengeluarkan permintaan tarik dari garpu Bitbucket mereka begitu mereka mendorong. Mintalah mereka menarik hanya dari repositori Anda (yang mereka curi dari).
Pelajari Mercurial sendiri sehingga Anda bisa menyelesaikan semua masalah terkait, ini awal yang baik: http://hginit.com/
Coba keduanya
Anda dapat menggunakan Mercurial dari Cloud9, seberapa keren itu?
Berhenti berasumsi
Jika Anda yang ingin menggunakan alat yang benar, Anda sudah berada dalam posisi kepemimpinan. Jangan menganggap mereka tidak berpendidikan dan berbicara dengan mereka tentang bagaimana hal-hal dilakukan di dunia nyata.
Bersikaplah antusias tentang hal itu dan tidak menggurui.
Benar-benar tidak ada yang lebih mudah dari ini jika Anda ingin melakukan sesuatu dengan benar. Jika mereka secara tegas tidak ingin menggunakan kontrol versi maka Anda mungkin memiliki masalah lain yang lebih serius.
sumber
Saya merekomendasikan pengembang Anda ke http://try.github.com
Tetapi jika tidak ada kontrol versi yang memungkinkan, Anda dapat tetap menggunakan sesuatu yang cocok untuk pemula / junior yang mendasar (dan kuno).
Pengaturan untuk folder web server pengembangan Anda juga bisa berupa svn checkout (atau git) dan Anda dapat mengatur crontab untuk secara otomatis melakukan revisi setiap kali secara otomatis atau Anda dapat menginstal cadangan atau mungkin rsync folder ke beberapa lokasi cadangan lain ketika mereka menimpa file satu sama lain (karena itu akan terjadi) dan Anda harus memberi Bob perubahan yang hilang. Akhirnya setelah bekerja dengan sistem selama beberapa bulan, mereka akan meminta Anda untuk memberi mereka akses svn / git.
sumber
Anda perlu memperbaiki asumsi itu dan mencari tahu apakah mereka memiliki atau tidak memiliki pengetahuan atau pengalaman dari sistem kontrol versi apa pun. Tidak ada gunanya berasumsi kapan mereka bisa memiliki pengetahuan.
Seperti jawaban lain katakan, inilah tujuan dari kontrol versi. Git mungkin adalah cara terbaik ke depan, dan Learn Git adalah titik awal yang sangat baik
sumber
Yah, tidak ada jalan keluar selain menggunakan kontrol versi .
Dropbox memang memiliki semacam kontrol versi , tetapi saya percaya bahwa jika dua orang menyimpan file, versi yang lebih baru hanya akan menggantikan versi yang lebih lama, yang tidak diinginkan untuk kontrol versi selama pengembangan perangkat lunak.
Svn adalah sistem kontrol versi yang mudah dipelajari (setidaknya lebih mudah daripada git), dan Anda dapat menemukan berbagai repositori publik yang di-host secara online, tetapi saya tidak akan merekomendasikannya untuk tim yang didistribusikan secara geografis.
Jadi cara untuk pergi untuk tim yang didebit adalah git. Jika memiliki sumber Anda publik ATAU membeli paket pribadi bukan masalah, maka buat repositori di github , jika tidak, siapkan repositori git lokal.
Mungkin Anda dapat menemukan GUI untuk git yang mungkin membuatnya lebih mudah bagi para pengembang ini untuk mulai memahami sistem kontrol versi secara konseptual. Untuk Windows, TortoiseGIT -nya . Saya belum menggunakan klien git gui untuk Linux atau MAC, jadi saya tidak akan merekomendasikan satu di sini.
sumber
Anda berada di jalur yang benar
Ini
version controlling
cara untuk pergi! Ini akan berfungsi dengan baik untuk berkolaborasi berbagi kode dan membantu dengan integrasi. Selain itu, check-in yang sering dilakukan adalah disiplin yang sangat penting yang perlu dilakukan semua tim.Namun, memilih kontrol versi yang tepat untuk proyek Anda sangat penting.
Ada posting bagus baru-baru ini dan jawaban untuk membantu Anda memutuskan: Apa contoh mainan yang bagus untuk mengajarkan kontrol versi?
sumber