মার্চুরিয়ালে রিলিজ শাখাগুলি বজায় রাখার সময় পরিবর্তনগুলি এড়িয়ে যাওয়ার বিষয়ে সম্প্রতি বেশ কয়েকটি প্রশ্ন রয়েছে। উদাহরণ স্বরূপ:
- মার্চুরিয়াল: ডামি সংশ্লেষের পরে শাখার নির্দিষ্ট পরিবর্তনগুলি ফিরে আসতে থাকবে
- কেন একটি শাখায় মার্কুরিয়াল ব্যাকআউটগুলি অন্য শাখাগুলিকে প্রভাবিত করছে?
যেহেতু এটি 2.0 তে চালু হয়েছিল, তাই আমি graft
এই সমস্যাটি এড়াতে ব্যবহার করার বিষয়ে ভাবছি । এটির মতো একটি সংশোধন গাছ দেওয়া হয়েছে:
A---B---C---D---E---F---G---H---I---J
মনে করুন আমাদের একটি রিলিজ শাখা তৈরি করা দরকার যা theভিল পরিবর্তনকে এড়িয়ে চলে E
।
hg update -r D
hg graft "F::J"
আমাদের প্রদান:
A---B---C---D---E---F---G---H---I---J
\
--F'--G'--H'--I'--J'
- প্রশ্ন 1: এখানে কি ঘটেছিল? আমি বুঝতে পারি যে
transplant
এটি থেকে প্যাচগুলি উত্পন্ন হবেF::J
এবং তারপরে সেগুলি প্রয়োগ করা হয়েছেD
, তবেgraft
প্যাচগুলির পরিবর্তে 3-উপায় সংহতকরণ ব্যবহার করার কথা রয়েছে। কাজটি কেমন হচ্ছে তাহলে? কেন এটা ভাল?
এখনই ঠিক করুন E
এবং এটিকে আমার মুক্তির শাখায় মার্জ করুন।
--E2-----------------
/ \
A---B---C---D---E---F---G---H---I---J---M1
\ \
--F'--G'--H'--I'--J'---------M2--
এম 1 একটি সরাসরি মার্জ; সেখানে বিশেষ কিছু নেই। এম 2 শাখাগুলি মার্জ করছে যা "একই" (বা কমপক্ষে সমতুল্য) পরিবর্তন রয়েছে।
- Q2 এর: এই একত্রীকরণ শুধু একটি স্বাভাবিক 3-উপায় একত্রীকরণ ব্যবহার করছে
D
,J'
এবংM1
? - প্রশ্ন 3: মার্চিয়াল এটি মার্জটিতে সহায়তা করার জন্য গ্রাফট অপারেশন সম্পর্কে অতিরিক্ত তথ্য সংরক্ষণ / ব্যবহার করেছে?
এবং পরিশেষে...
- প্রশ্ন 4: এর মতো প্রবাহের সম্ভাব্য সমস্যাগুলি কী কী?