অন্য একটি প্রশ্ন বলা git pullএকটি git fetch+ এর মত git merge।
তবে git pullভিএস git fetch+ এর মধ্যে পার্থক্য কী git rebase?
অন্য একটি প্রশ্ন বলা git pullএকটি git fetch+ এর মত git merge।
তবে git pullভিএস git fetch+ এর মধ্যে পার্থক্য কী git rebase?
উত্তর:
আপনার প্রশ্ন থেকে এটা স্পষ্ট হওয়া উচিত যে আপনি আসলে git mergeএবং এর মধ্যে পার্থক্য সম্পর্কে জিজ্ঞাসা করছেন git rebase।
সুতরাং ধরা যাক আপনি সাধারণ ক্ষেত্রে রয়েছেন - আপনি আপনার মাস্টার শাখায় কিছু কাজ করেছেন, এবং আপনি উত্স থেকেও টানছেন, যা কিছু কাজ করেছে। আনার পরে জিনিসগুলি দেখতে এরকম দেখাচ্ছে:
- o - o - o - H - A - B - C (master)
\
P - Q - R (origin/master)
কোনও দ্বন্দ্ব নেই বলে ধরে নিয়ে আপনি যদি এই মুহুর্তে (গিট টানার ডিফল্ট আচরণ) মার্জ করে থাকেন তবে আপনি এটিকে শেষ করবেন:
- o - o - o - H - A - B - C - X (master)
\ /
P - Q - R --- (origin/master)
অন্যদিকে আপনি যদি উপযুক্ত রিবেসটি করেন তবে আপনি এটি শেষ করবেন:
- o - o - o - H - P - Q - R - A' - B' - C' (master)
|
(origin/master)
আপনার কাজের গাছের সামগ্রী উভয় ক্ষেত্রে একই রকম হওয়া উচিত; আপনি সবেমাত্র একটি আলাদা ইতিহাস তৈরি করেছেন । প্রত্যাবর্তনটি আপনার ইতিহাসকে পুনর্লিখন করে, এটিকে দেখে মনে হয় Rআপনি মূলত যেখানে প্রতিশ্রুতিবদ্ধ ছিলেন তার পরিবর্তে আপনি মূলটির নতুন মাস্টার শাখা ( ) এর শীর্ষে প্রতিশ্রুতিবদ্ধ ছিলেন H। আপনার মাষ্টার শাখা থেকে অন্য কেউ ইতিমধ্যে টানা থাকলে আপনার কখনই রিবেস পদ্ধতির ব্যবহার করা উচিত নয়।
শেষ অবধি, নোট করুন যে আপনি git pullএকটি প্রদত্ত শাখার জন্য কনফিগার প্যারামিটারটিকে branch.<name>.rebaseসত্যে সেট করে মার্জ করার পরিবর্তে রিবেস ব্যবহার করতে সেট করতে পারেন । আপনি একক টান ব্যবহার করে এটিও করতে পারেন git pull --rebase।
git pullমত চলমান git fetchতারপর git merge
git pull --rebaseভালো হয় git fetchতারপরgit rebase
git pullএকটি মত হল git fetch+ + git merge।
"এর ডিফল্ট মোডে গিট টান সংক্ষিপ্তভাবে
git fetchঅনুসরণ করেgit mergeতারপরে FETCH_HEAD" আরও সুনির্দিষ্টভাবে, প্রদত্ত প্যারামিটারগুলির সাথেgit pullচালিতgit fetchহয় এবং তারপরেgit mergeপুনরুদ্ধারকৃত ব্রাঞ্চের মাথাগুলি বর্তমান শাখায় মার্জ করার জন্য আহ্বান জানায় "
(রেফ: https://git-scm.com/docs/git-pull )
'তবে git pullভিএস git fetch+ এর মধ্যে পার্থক্য কী? git rebase'
আবার, একই উত্স থেকে:
git pull --rebase
"--Rebase সহ, এটি গিট একীকরণের পরিবর্তে গিট রিবেস চালায়।"
'পার্থক্য mergeএবং rebase'
এখানেও তার উত্তর দেওয়া হয়েছে:
https://git-scm.com/book/en/v2/Git-Branching- রিবেসিং
(সংস্করণ ইতিহাসের রেকর্ড অনুসারে পরিবর্তন করার মধ্যে পার্থক্য)
git fetch + git rebaseএখন থেকে কমান্ডগুলি যেভাবে কাজ করে তা আমি সত্যিই বুঝতে পারি । আমাদের গিট গাছে এখন থেকে কোনও বা কম বিরোধ নেই :) :)