Apakah SVN ketinggalan zaman? [Tutup]

9

Sudah beberapa tahun sejak saya bermigrasi dari Visual Source Safe ke SVN. Dan SVN bagi saya masih agak "WOW! Saya bisa melakukan banyak hal! SVN sangat keren!"

Tetapi banyak orang di sekitar saya terus mengatakan "SVN? Benarkah? Meh ..."

Dan ada banyak dari mereka yang saya khawatirkan. Haruskah saya memindahkan tim saya ke Git / Mercurial atau hal mewah lainnya? Saya tahu saya terdengar konyol dan jawaban yang jelas adalah "tetap dengan apa yang bekerja untuk ANDA". SVN tidak bekerja untuk saya ... Tetapi setiap kali saya membuat proyek baru di repositori saya, saya terus bertanya pada diri sendiri - mungkin ini saatnya untuk pindah?

Jadi ... Apakah SVN benar-benar seburuk itu? Apakah saya kehilangan peluang besar dengan tetap menggunakannya?

jitbit
sumber
Ini mungkin bacaan yang menarik: stackoverflow.com/questions/161541/svn-vs-git
fouronnes
Apakah Anda seorang pengembang mandiri?
TehMinumGeek
6
Saya selalu menggunakan GIT. Sekarang saya harus menggunakan SVN di tempat kerja .... ... ... ... ... ... ... RAGE.
Ivo Wetzel
@TeaDrinkingGeek: OP mengatakan "Haruskah saya memindahkan tim saya ..." jadi saya kira ada lebih dari sekedar OP yang terlibat (kecuali jika Anda menghitung tim dari satu tim - tetapi kemudian biasanya tidak disebut sebagai "tim saya" ).
FrustratedWithFormsDesigner
lol maaf sobat, mata agak kabur setelah 12 jam di laptop. :)
TeaDrinkingGeek

Jawaban:

8

Itu sepenuhnya tergantung pada penggunaan.

Jika Anda memiliki satu tim orang di sebuah ruangan dan mereka melakukan sebagian besar pekerjaan mereka di sana, jika Anda memiliki proses membangun dan menggunakan yang sudah Anda sukai, dan jika Anda tidak ingin membagikan kode Anda dengan orang secara luas (seperti yang Anda lakukan dengan proyek open source), maka Anda tidak harus berkeringat.

Saya beralih mungkin setahun yang lalu dari Subversion ke git. Git sangat memadai untuk kasus penggunaan yang sebagian besar lokal, tetapi di mana itu benar-benar bersinar pengembangan didistribusikan Digunakan secara lokal, senang memiliki github sebagai cadangan jarak jauh dan antarmuka web yang cantik ke kode, dan membuatnya mudah bagi saya untuk membiarkan kontraktor berpartisipasi. Tapi saya tidak mendapatkan banyak dari itu sekarang karena saya tidak mendapatkan dari Subversion.

William Pietri
sumber
8

Jangan hanyut dalam arus hip konstan. Anda memiliki sesuatu yang berfungsi, tetap menggunakannya sampai ada persyaratan bisnis yang lebih baik bertemu dengan sesuatu yang lain (tidak, sistem kontrol sumber baru atau bahasa pemrograman setiap beberapa bulan, setiap kali sesuatu "baru dan lebih baik" dinyalakan, TIDAK akan terjadi untuk memenuhi persyaratan bisnis Anda lebih baik daripada yang Anda gunakan sekarang).

Jika SVN bekerja untuk organisasi Anda, maka tidak ada alasan untuk menginvestasikan uang / waktu / upaya yang diperlukan untuk pindah ke sesuatu yang lain, betapapun banyak orang menginginkannya karena itu baru dan berkilau.

Dan tidak, itu bukan (seperti yang dipikirkan JBK) keputusan yang seharusnya bergantung pada "tim", itu keputusan yang terserah manajemen setelah berkonsultasi dengan semua pihak yang berkepentingan (yang setidaknya termasuk sysadmin Anda). Ini adalah keputusan bisnis untuk mengeluarkan uang untuk mengubah tumpukan teknologi Anda, bukan keputusan teknis.

jwenting
sumber
Saya akan mendukung Anda jutaan kali jika saya bisa.
HLGEM
5

Saya percaya seseorang seharusnya tidak pernah membuat keputusan karena ketidaktahuan. Jika Anda tidak tahu apa yang Anda lewatkan, Anda harus mencoba cukup lama sampai Anda tahu, maka Anda dapat membuat keputusan. Lompatan ke kontrol terdistribusi tidak dapat benar-benar dipahami tanpa mencobanya, dan melepaskan beberapa kebiasaan lama saat Anda melakukannya. Sebagian besar kekuatan DVCS adalah Anda dapat membuat cabang sebanyak yang Anda inginkan, untuk alasan apa pun yang Anda inginkan. Jika Anda mencobanya selama sebulan dan belum membuat setidaknya 5 cabang atau lebih, Anda tidak mengujinya dengan persyaratan sendiri. Ini adalah kesalahan kebanyakan orang yang tidak "mendapatkan" git. Setelah itu, jika Anda kembali ke svn, setidaknya Anda akan tahu alasannya sendiri.

Karl Bielefeldt
sumber
5
Saya sangat mendukung membuat sebagian besar keputusan karena ketidaktahuan relatif. Anda menyarankan dia membutuhkan waktu sebulan untuk mencoba git. Itu pekerjaan nyata. Dia seharusnya hanya melakukan itu jika ada alasan untuk percaya itu akan membuat situasinya jauh lebih baik. Kalau tidak, mungkin ada hal lain yang harus dia pakai selama bulan eksperimen. Misalnya redis atau mongo atau rails atau node.js atau BDD hal-hal baru yang sama-sama panas.
William Pietri
Tapi Git adalah hal baru yang panas. Dan pengalaman banyak pengguna Git menunjukkan itu akan membuat situasinya jauh lebih baik.
Kyralessa
3

Saya belum pernah menggunakan Git, tapi saya sudah menggunakan Mercurial, dan saya benar-benar tidak mengerti apa masalahnya. Rasanya jauh seperti SVN, kecuali bahwa hal-hal dasar seperti checkin dan checkout lebih rumit (membutuhkan dua langkah, bukan satu). Sebagai imbalannya, itu seharusnya membuat banyak hal yang lebih maju yang sebenarnya tidak pernah saya perlukan untuk melakukan banyak hal sederhana. Reaksi saya terhadap klaim DVCS yang entah bagaimana secara inheren superior pada dasarnya, "OK, tentu, saya akan mengambil kata-kata Anda untuk itu," dan kemudian saya melanjutkan dengan SVN, yang bekerja dengan baik untuk saya.

Mason Wheeler
sumber
Kesepakatan besar tentang DVCS adalah Anda dapat melakukan semua pekerjaan Anda "offline." Bahwa satu fitur memaksakan persyaratan bahwa DVCS memiliki mekanisme penggabungan yang kuat yang dapat menangani rebasing dan bercabang; jenis tugas yang tidak mungkin dilakukan dengan VCS terpusat. Orang-orang superioritas mengklaim berasal dari alur kerja yang diaktifkan daripada keunggulan teknis. Jika Anda tidak menggunakan atau membutuhkan alur kerja semacam itu, tidak masalah juga.
greyfade
1
Itu karena checkin dan checkout tidak ada di DVCS. Anda menggunakan hg sebagai pengganti SVN daripada menggunakan hg seperti yang seharusnya digunakan. Hal yang sama berlaku untuk setiap DVCS.
alternatif
@Mathepic: Ya, Anda dapat mengubah nama jika Anda mau, tetapi konsep dasar mentransfer data antara copy pekerjaan lokal dan repositori resmi ada di sistem kontrol sumber apa pun.
Mason Wheeler
1
tidak. Tidak ada operasi seperti itu dalam DVCS.
alternatif
3
ya ada - titik repo pusat untuk mendorong versi 'master' adalah kasus penggunaan yang sangat valid, baik untuk cadangan, build-server, manajemen rilis, atau hanya cara untuk berkoordinasi lebih baik antara tim.
gbjbaanb
-2

Jawaban yang jelas di sini adalah membiarkan tim memutuskan dan berdiskusi tentang apa pilihan terbaik untuk semua orang sehingga bukan seseorang yang memanggil tembakan dalam ruang hampa. Mungkin ada berbagai pendapat dan masalah yang harus diatasi, tetapi saya lebih suka menyarankan jawaban konsensus daripada mencoba menjadi diktator tentang apa yang harus digunakan.

JB King
sumber
3
Apakah Anda memiliki gagasan tentang biaya dalam perubahan jam dari satu sistem kontrol sumber ke yang lain atau risiko kehilangan hal-hal dalam proses jika seseorang yang baru ke sistem baru membuat kesalahan dalam mengubah kode yang ada? Ini BUKAN keputusan tim, ini adalah keputusan bisnis dan hanya boleh dilakukan jika Anda memiliki kebutuhan nyata yang tidak dapat dipenuhi oleh sistem Anda saat ini.
HLGEM