উত্তরটি আপনার দলের আকার এবং আপনার উত্স নিয়ন্ত্রণের মানের এবং সঠিকভাবে জটিল পরিবর্তন সেটগুলিকে মার্জ করার ক্ষমতা নির্ভর করে। উদাহরণস্বরূপ সিভিএস বা এসভিএন মার্জ হওয়া যেমন সম্পূর্ণ ব্রাঞ্চ সোর্স কন্ট্রোলে আপনি কঠিন হতে পারেন এবং আপনি প্রথম মডেলের সাথে আরও ভাল হতে পারেন, যখন আইবিএম ক্লিয়ারকেসের মতো আরও জটিল সিস্টেম ব্যবহার করা হয় এবং একটি বড় আকারের টিমের সাথে আপনি দ্বিতীয়টির সাথে আরও ভাল হতে পারেন if মডেল বা দুটি সংমিশ্রণ।
আমি ব্যক্তিগতভাবে বৈশিষ্ট্য শাখার মডেলকে আলাদা করব, যেখানে প্রতিটি বড় বৈশিষ্ট্য পৃথক শাখায় বিকাশিত হয়, প্রতিটি বিকাশকারী দ্বারা প্রতিটি পরিবর্তনের জন্য টাস্ক সাব-শাখা থাকে। বৈশিষ্ট্যগুলি স্থিতিশীল হওয়ার সাথে সাথে তারা ট্রাঙ্কে মিশে যায়, যা আপনি যুক্তিসঙ্গতভাবে স্থিতিশীল রাখেন এবং সব সময় সমস্ত রিগ্রেশন পরীক্ষায় উত্তীর্ণ হন। আপনি যখন আপনার রিলিজ চক্রের শেষের দিকে এবং সমস্ত বৈশিষ্ট্য শাখাগুলি মার্জ হয়ে গেছে, আপনি স্থিতিশীল এবং একটি রিলিজ সিস্টেম শাখার শাখা যার উপর আপনি কেবল স্থায়িত্ব বাগ ফিক্স এবং প্রয়োজনীয় ব্যাকপোর্টগুলি করেন, যখন ট্রাঙ্কটি পরবর্তী প্রকাশের বিকাশের জন্য ব্যবহৃত হয় এবং আপনি আবার নতুন বৈশিষ্ট্য শাখার জন্য শাখা বন্ধ। ইত্যাদি।
এই ট্রাঙ্কে সর্বদা সর্বশেষতম কোড থাকে তবে আপনি এটিকে যুক্তিসঙ্গতভাবে স্থিতিশীল রাখতে পরিচালিত করেন, বড় পরিবর্তন এবং বৈশিষ্ট্য সংযোজনে স্থিতিশীল লেবেল (ট্যাগ) তৈরি করে, বৈশিষ্ট্য শাখাগুলি ক্রমাগত সংহতকরণের সাথে দ্রুত গতিযুক্ত বিকাশ এবং স্বতন্ত্র কার্য উপ-শাখাগুলি প্রায়শই হতে পারে একই বৈশিষ্ট্যটিতে কাজ করে সবাইকে সিঙ্কে রাখার জন্য বৈশিষ্ট্য শাখা থেকে রিফ্রেশ করা হয়েছে, একইসাথে অন্যান্য টিমগুলিতে বিভিন্ন বৈশিষ্ট্যগুলিতে কাজ করা প্রভাবিত করছে না।
একই সাথে আপনার কাছে ইতিহাসের মুক্তির শাখাগুলির একটি সেট রয়েছে, যেখানে আপনি আপনার গ্রাহকদের ব্যাকপোর্ট, সহায়তা এবং বাগফিক্স প্রদান করতে পারেন যারা যেকোন কারণে আপনার পণ্যের পূর্ববর্তী সংস্করণে বা এমনকি সর্বশেষ প্রকাশিত সংস্করণে থাকতে পারে। ট্রাঙ্কের মতো, আপনি রিলিজ শাখাগুলিতে অবিচ্ছিন্ন ইন্টিগ্রেশন সেটআপ করবেন না, তারা সমস্ত রিগ্রেশন টেস্ট এবং অন্যান্য রিলিজের মান নিয়ন্ত্রণ নিয়ন্ত্রণের সাথে সাবধানতার সাথে একীভূত হয়।
যদি কোনও কারণে দুটি বৈশিষ্ট্য সহ-নির্ভর হয়ে থাকে এবং একে অপরের দ্বারা পরিবর্তিত হওয়া দরকার হয় তবে আপনি উভয়টিকে একই বৈশিষ্ট্য শাখায় বিকাশ করতে পারেন বা কোডের স্থিতিশীল অংশগুলি ট্রাঙ্কে নিয়মিত সংহত করতে এবং তারপরে পরিবর্তনগুলি রিফ্রেশ করার জন্য বৈশিষ্ট্যগুলি প্রয়োজন ট্রাঙ্ক ট্রাঙ্ক শাখার মধ্যে কোড বিনিময়। বা যদি আপনার এই দুটি বৈশিষ্ট্য অন্যের কাছ থেকে আলাদা করতে হয় তবে আপনি একটি সাধারণ শাখা তৈরি করতে পারেন যা আপনি সেই বৈশিষ্ট্যগুলি শাখাগুলি শাখা করেন এবং যা আপনি বৈশিষ্ট্যের মধ্যে কোড বিনিময় করতে ব্যবহার করতে পারেন।
উপরোক্ত মডেলটি 50 টি বয়সের অধীনে বিকাশকারী এবং সোর্স কন্ট্রোল সিস্টেমগুলির সাথে স্পার্স শাখা ছাড়াই এবং সিভিএস বা এসভিএন এর মতো উপযুক্ত মার্জিংয়ের ক্ষমতা সহ খুব বেশি অর্থবোধ করে না, যা এই পুরো মডেলটিকে কেবল সেটআপ, পরিচালনা এবং সংহত করার জন্য একটি দুঃস্বপ্ন করে তোলে।