নিম্নলিখিত ক্ষেত্রে নিন:
আমার একটি টপিক শাখায় কিছু কাজ আছে এবং এখন আমি আবার মাস্টারের সাথে একীভূত হতে প্রস্তুত:
* eb3b733 3 [master] [origin/master]
| * b62cae6 2 [topic]
|/
* 38abeae 1
আমি মাস্টার থেকে মার্জ সম্পাদন করি, দ্বন্দ্বগুলি সমাধান করি এবং এখন আমার কাছে রয়েছে:
* 8101fe3 Merge branch 'topic' [master]
|\
| * b62cae6 2 [topic]
* | eb3b733 3 [origin/master]
|/
* 38abeae 1
এখন, মার্জটি আমাকে কিছুটা সময় নিয়েছে তাই আমি আরও একটি আনয়ন করি এবং লক্ষ্য করেছি যে রিমোট মাস্টার শাখায় নতুন পরিবর্তন হয়েছে:
* 8101fe3 Merge branch 'topic' [master]
|\
| * b62cae6 2 [topic]
| | * e7affba 4 [origin/master]
| |/
|/|
* | eb3b733 3
|/
* 38abeae 1
আমি যদি মাস্টারের কাছ থেকে 'গিট রিবেস আদি / মাস্টার' চেষ্টা করি তবে আমি সমস্ত দ্বন্দ্ব পুনরায় সমাধান করতে বাধ্য হই এবং আমি একীভূত প্রতিশ্রুতিও হারিয়ে ফেলি:
* d4de423 2 [master]
* e7affba 4 [origin/master]
* eb3b733 3
| * b62cae6 2 [topic]
|/
* 38abeae 1
একীভূত প্রতিশ্রুতি পুনরায় চালু করার কি কোনও পরিষ্কার উপায় আছে যাতে আমি নীচে দেখানো ইতিহাসের মতো শেষ করি?
* 51984c7 Merge branch 'topic' [master]
|\
| * b62cae6 2 [topic]
* | e7affba 4 [origin/master]
* | eb3b733 3
|/
* 38abeae 1
git config --global pull.rebase preserve
একটি রিবেস চলাকালীন সর্বদা মার্জ
git --rebase-merges
শেষ পর্যন্ত পুরানোটিকে প্রতিস্থাপন করবে git --preserve-merges
। rebase --preserve-merges
--preserve-merges
অবচয় করা হয়। ব্যবহারgit rebase --rebase-merges origin/master
git rebase --preserve-merges origin/master