Untuk menjawab pertanyaan migrasi dari pengalaman pribadi beberapa migrasi:
Jangan takut untuk hanya meletakkan versi perangkat lunak saat ini ke dalam sistem kontrol sumber baru sebagai garis dasar dan bekerja dari sana.
Sebagian besar waktu Anda tidak perlu sejarah. Ini berarti satu tugas yang kurang untuk dilakukan selama integrasi dan satu hal yang salah.
File / proyek yang sedang dikembangkan secara aktif akan segera menghasilkan sejarah baru. Jadi, ketika Anda perlu mencari tahu mengapa perubahan dilakukan, kemungkinannya adalah bahwa sejarah akan berada di repositori saat ini karena itu akan menjadi perubahan terbaru.
File / proyek yang stabil sebelum migrasi harus (semua hal dianggap sama) tetap stabil setelah migrasi sehingga Anda tidak perlu merujuk ke riwayat. Kami menemukan bahwa jika kami harus menyelidiki bug dalam file / proyek lama yang memiliki sejarah tidak benar-benar bermanfaat. Selama Anda menyimpan repositori lama tersedia selama 6 bulan / tahun Anda akan memiliki referensi dalam kasus tersebut.
Di sisi manajerial, pertanyaan utamanya adalah:
Sayangnya ini adalah salah satu alasan utama mengapa produk usang seperti ClearCase masih dipertimbangkan (ClearCase sejak 2003 merupakan ... produk IBM )
Di sisi proyek, ini juga merupakan pertanyaan tentang:
Freeware atau tidak, ingat perangkat lunak "gratis" gratis seperti dalam "kebebasan berbicara" (Anda bebas memilih dan menggunakan yang Anda inginkan), tidak seperti dalam "bir gratis" (masih akan menghabiskan banyak uang di server , cadangan, administrasi, dukungan, ...)
Kriteria yang disebutkan di atas adalah awal untuk menentukan VCS apa yang harus disimpan, apa yang harus ditinggalkan.
Namun dalam kasus terakhir, Anda perlu mempertimbangkan:
sumber
Apakah Anda benar-benar perlu mengintegrasikan sistem yang berbeda? Dalam tim kami, setiap proyek tinggal di repositori sendiri, dan sejarahnya independen. Kami tidak memiliki masalah di sini untuk bekerja dengan beberapa proyek di bawah subversi dan beberapa lainnya di bawah lincah, bahkan jika ada ketergantungan di antara mereka.
Jika Anda memilih untuk bermigrasi dari satu VCS ke yang lain, lihat alat konversi yang tersedia. Dari pengalaman saya, tidak ada alasan teknis untuk menghapus sejarah proyek.
Edit
Saya pikir saya mengerti sesuatu, yang tersirat dalam pertanyaan dan jawaban lainnya. Itu fakta bahwa VCS juga digunakan untuk mengelola dependensi. Saya tahu itu cukup umum untuk menggunakan fitur VCS ingin
svn:externals
mengintegrasikan satu repo (ketergantungan) dengan yang lain.Saya pikir alasan (teknis) tim kami tidak merasa perlu menjembatani (atau mengintegrasikan) 2 sistem kami yang berbeda adalah karena kami memiliki alat terpisah untuk mengelola dependensi. Repo kami tidak saling kenal.
sumber
Banyak jawaban bagus. Satu hal lain untuk dipikirkan adalah jangan biarkan anggota tim lolos dengan berpikir mengganti VC adalah masalah besar. Akan ada kemunduran dengan migrasi, kurva belajar, dll., Tetapi jika mereka memiliki terlalu banyak masalah, mereka perlu mempertanyakan tingkat kemampuan dan / atau kerja sama mereka.
sumber