Apa platform paling dasar dan sederhana untuk pengembangan kolaboratif (proyek PHP)? [Tutup]

14

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.

Esuus
sumber
Anda menggunakan github sebagai tag. Github sangat baik - apakah Anda punya uang untuk repo pribadi?
Saya merekomendasikan SourceAnywhere Di-host. Sangat intuitif untuk menggunakan produk. Sebenarnya, jika Anda mencari kontrol versi, Anda akan menemukan banyak saran / alat yang bagus. Jika Anda ingin memperpendek kurva belajar, di samping produk itu sendiri, ingatlah "layanan pelanggan yang baik" dalam pikiran ketika memilih suatu produk. Karena itu berarti Anda akan mendapatkan pelatihan dan dukungan teknis yang baik dari perusahaan.
Windy

Jawaban:

12

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.

Mendambakan
sumber
2
Saya tidak memiliki opsi untuk memilih pengembang lain, atau meminta mereka mempelajari kontrol versi. Percayalah, saya lebih suka keduanya. Tapi saya tidak bisa - itulah alasan saya mengajukan pertanyaan ini. Ada banyak deveopers amatir di luar sana, apa yang mereka gunakan?
Esuus
6
Mereka belajar alat yang tepat atau tetap junior untuk selamanya.
Adrian Schneider
2
@Esuus Tidak butuh waktu lama untuk belajar git: try.github.com/levels/1/challenges/1
VirtuosiMedia
3
@VirtuosMedia Saya rasa Git tidak sesederhana itu, SVN jauh lebih mudah dipahami.
Matěj Zábský
1
Saya tidak tahu tentang Git, tetapi TortoiseSVN membuatnya sangat mudah bagi pengguna yang tidak berpengalaman untuk berurusan dengan SVN.
Brian
4

... 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.

dukeofgaming
sumber
Saya merasa ini adalah jawaban terbaik, karena itu satu-satunya yang benar-benar menjawab pertanyaan daripada menggurui si penanya. Saya sangat menghargai tips tentang cara membuat Mercurial lebih mudah bagi orang-orang (mengambil merger dan integrasi dari tangan mereka). Ini sepertinya cara termudah untuk melakukan kontrol versi dengan orang yang ragu untuk berpartisipasi. Terima kasih!
dallin
3

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).

  1. APP + DB pada server pengembangan
  2. Semua orang di messenger yang sama sepanjang waktu saat bekerja sehingga mereka dapat berbicara dan tahu siapa yang bekerja
  3. Semua orang mengedit langsung di server DEV melalui FTP tua biasa
  4. Menegakkan aturan tim tentang memperbarui changelog dengan revisi mereka + membuat komentar kode penting

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.

Anthony Hatzopoulos
sumber
Meskipun semua jawaban di sini sangat membantu (dan karena itu saya sekarang serius mempertimbangkan jika ada cara untuk membuat mereka belajar GIT / SVN), hanya Anda yang benar-benar menjawab pertanyaan saya. Terima kasih sobat.
Esuus
2

Saya berasumsi bahwa kebanyakan dari mereka tidak pernah menggunakan sistem kontrol versi.

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

Amy
sumber
2

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.

Ozair Kafray
sumber
Dropbox memiliki satu keuntungan: Anda dapat membuat orang menggunakannya yang tidak pernah menggunakan sistem kontrol sumber dalam hidup mereka. Ini bisa menjadi keuntungan besar ketika bekerja dengan profesor sains ...
Donal Fellows
GitHub juga memiliki repositori pribadi jika Anda tidak ingin mempublikasikan kode Anda.
VirtuosiMedia
@VirtuosiMedia Ya, saya tahu itu, tetapi saya tidak yakin apakah mereka gratis.
Ozair Kafray
@OzairKafray Mereka tidak gratis, tetapi cukup murah. Paket terkecil memberi Anda 5 repositori pribadi seharga $ 7 / bulan, plus publik tanpa batas.
VirtuosiMedia
2

Anda berada di jalur yang benar

Ini version controllingcara 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?

Yusubov
sumber