আসলে তৃতীয় সম্ভাবনা রয়েছে — এবং সম্ভবত অন্যরা প্রচুর পরিমাণে আছে, যেহেতু জিআইটি একটি এসসিএম পদ্ধতি প্রয়োগের চেয়ে এসসিএম কাঠামোর বাস্তবায়ন। এই তৃতীয় সম্ভাবনা উপর ভিত্তি করে rebase
।
rebase
এলেবেলে subcommand (আপনার বিষয় শাখা ডগা আপনার শাখাবিন্যাস বিন্দু থেকে সাধারণত কমিট একটি সিরিজ লাগে topic
) এবং তাদের অন্য কোথাও রিপ্লে (সাধারণত আপনার ইন্টিগ্রেশন শাখা ডগা, যেমন এ master
)। rebase
Subcommand নতুন করে, যা একটি ফর্ম পর্যালোচনা করা সহজ যে করে সাজানোর সুযোগ দেয় উৎপন্ন হয়। এটি প্রতিশ্রুতির একটি নতুন সিরিজ দেয় যা আগে topic
ব্যবহৃত একই রকম ছিল তবে ইন্টিগ্রেশন শাখার শীর্ষে মূলের প্রদর্শিত হয়। এই নতুন শাখাটিকে এখনও topic
জিআইটি কল করে, যাতে পুরানো রেফারেন্সটি ফেলে দেওয়া হয়। আমি অনানুষ্ঠানিকভাবে topic-0
আপনার শাখার মূল অবস্থা topic-1
এবং তার বিভিন্ন রিফ্যাক্টরিংয়ের উপর লেবেল করি ।
আপনার topic
শাখার জন্য আমার পরামর্শটি এখানে :
(ঐচ্ছিক পদক্ষেপ) ইন্টারেক্টিভ পদ্ধতিতে আপনার বিষয়ের শাখা রি-বেসের ফলে topic
তার শাখাবিন্যাস বিন্দুতে (দেখুন --fixup
জন্য বিকল্প commit
এবং -i
এবং --autosquash
দিকের বিকল্পগুলি rebase
), যা আপনি একটি উপায় পর্যালোচনা করা সহজ যে আপনার করে পুনর্লিখন করার সুযোগ দেয়। এটি একটি শাখায় ফলাফল topic-1
।
আপনি আপনার ইন্টিগ্রেশন শাখার শীর্ষে আপনার টপিক শাখাটি রিবাজ করেন, মার্জ করার অনুরূপ, তবে কেবল একটি সফটওয়্যার ইঞ্জিনিয়ারিং শিল্পকর্ম যা একীভূতকরণের সাথে ইতিহাসকে "দূষিত করে না"। এটি একটি শাখায় ফলাফল topic-2
।
topic-2
এমন সতীর্থকে প্রেরণ করুন যা এটির টিপের বিপরীতে পর্যালোচনা করে master
।
যদি topic-2
ঠিক থাকে তবে মাস্টারটিতে এটি মার্জ করুন।
দ্রষ্টব্য: যে শাখাগুলি - যেখানে শাখাটি প্রতিশ্রুতিবদ্ধ গাছকে বোঝায় - সমস্তগুলি জিআইটি দ্বারা একই বলা হবে, সুতরাং, প্রক্রিয়া শেষে, কেবল শাখার topic-2
জিআইটিতে একটি নাম থাকবে।
পেশাদাররা:
- পর্যালোচনাতে কোনও অপ্রচলিত কোড নেই।
- কোনও উত্সাহী "বিদেশী সংশ্লেষ" পর্যালোচনা নেই (আপনি প্রথমে বর্ণিত ঘটনা)।
- পুনর্লিখনের সুযোগটি একটি পরিষ্কার উপায়ে কমিট করে।
কনস:
- এক শাখা পরিবর্তে
topic-0
, সেখানে তিনটি শাখা নিদর্শন হয় topic-0
, topic-1
এবং topic-2
যে নির্মিত গাছ কমিট হবে। (যদিও যে কোনও সময়ে, তাদের মধ্যে কেবল একটিরই জিআইটিতে নাম রয়েছে))
আপনার 1 ম দৃশ্যে - যদি কেউ "1" এর মধ্যে কোনও কিছু একীভূত করে এবং "২" বলতে শাখা পয়েন্ট তৈরির সময় এবং যখন আপনি একত্রীকরণের সিদ্ধান্ত নেন তখন সময়কে বোঝায়। এই পরিস্থিতিতে - যদি কেউ "1" এর মধ্যে কোনও কিছু একীভূত করে এবং "২" বলতে রিবেস এবং সংযুক্তির মধ্যে বিস্তৃত সময়কে বোঝায় যা সাধারণত খুব কম থাকে। এইভাবে আমি যে দৃশ্যের সরবরাহ করি master
তাতে আপনি আপনার কর্মপ্রবাহকে লক্ষণীয়ভাবে বিরক্ত না করে একীভূত হওয়ার সময়টির জন্য শাখাটি "লক" করতে পারেন , যখন এটি 1 ম দৃশ্যে অযৌক্তিক।
আপনি যদি পদ্ধতিগত কোড পর্যালোচনা করছেন, তবে পর্যাপ্ত উপায়ে (alচ্ছিক পদক্ষেপ) কমিটগুলি পুনরায় সাজানো সম্ভবত একটি ভাল ধারণা।
মধ্যবর্তী শাখার নিদর্শনগুলি পরিচালনা করা কেবলমাত্র যদি আপনি সেগুলি সংগ্রহস্থলের মধ্যে ভাগ করে থাকেন তবে একটি অসুবিধা উপস্থাপিত হয়।