গত কয়েক বছর ধরে আমি বেশ কয়েকটি বিভিন্ন সংস্করণ নিয়ন্ত্রণ সিস্টেমের সাথে কাজ করেছি। আমার জন্য তাদের মধ্যে অন্যতম মৌলিক পার্থক্য হ'ল তারা পৃথকভাবে ফাইলগুলি সংস্করণ করেন (প্রতিটি ফাইলের নিজস্ব পৃথক সংস্করণ নম্বর এবং ইতিহাস রয়েছে) অথবা সম্পূর্ণরূপে সংগ্রহস্থল (একটি "কমিট" বা সংস্করণ পুরো সংগ্রহস্থলের একটি স্ন্যাপশট উপস্থাপন করে) ।
কিছু "প্রতি ফাইল" সংস্করণ নিয়ন্ত্রণ সিস্টেম:
- জীবনবৃত্তান্ত
- ClearCase
- ভিজ্যুয়াল সোর্সসেফ
কিছু "সম্পূর্ণ-সংগ্রহস্থল" সংস্করণ নিয়ন্ত্রণ সিস্টেম:
- SVN
- git
- তত্পর
আমার অভিজ্ঞতায়, প্রতি-ফাইল সংস্করণ নিয়ন্ত্রণ সিস্টেমগুলি কেবল সমস্যার সৃষ্টি করেছে এবং সঠিকভাবে ব্যবহারের জন্য আরও অনেকগুলি কনফিগারেশন এবং রক্ষণাবেক্ষণের প্রয়োজন (উদাহরণস্বরূপ, ক্লিয়ারকেসে "কনফিগার স্পেকস")। আমার কোনও সহকর্মীর কোনও সম্পর্কহীন ফাইল পরিবর্তন করার এবং আদর্শভাবে বিকাশের একটি বিচ্ছিন্ন রেখা হতে পারে তা ভঙ্গ করার অনেক উদাহরণ রয়েছে।
এই প্রতি-ফাইল সংস্করণ নিয়ন্ত্রণ সিস্টেমের সুবিধা কি ? "পুরো-সংগ্রহস্থল" সংস্করণ নিয়ন্ত্রণ সিস্টেমগুলিতে প্রতি-ফাইল সংস্করণ নিয়ন্ত্রণ সিস্টেমগুলি নেই এমন কোন সমস্যা আছে?