හරි, මම හිතුවා මේක සරල වාතාවරණයක් කියලා, මට මොනවද නැති වෙලා තියෙන්නේ?
මට masterශාඛාවක් හා featureශාඛාවක් තිබේ. මම යම් වැඩක් කරමි master, සමහරක් ක්රියාත්මක වේ feature, පසුව තවත් සමහරක් කරන්නෙමි master. මම මේ වගේ දෙයකින් අවසන් වෙමි (ශබ්දකෝෂ අනුපිළිවෙලෙන් අදහස් කරන්නේ අනුපිළිවෙලයි):
A--B--C------F--G (master)
\
D--E (feature)
git push origin masterදුරස්ථව masterයාවත්කාලීනව තබා ගැනීමට හෝ git push origin feature(වැඩ කරන විට feature) මගේ featureවැඩ සඳහා දුරස්ථ උපස්ථයක් පවත්වා ගැනීමට මට කිසිදු ගැටළුවක් නොමැත . මේ වන තුරු, අපි හොඳයි.
ඒත් දැන් මම rebase කිරීමට අවශ්ය featureවූ මත F--Gස්වාමියා මත අනාචාරයේ, ඒ නිසා මම git checkout featureසහ git rebase master. තවමත් හොඳ. දැන් අපට ඇත්තේ:
A--B--C------F--G (master)
\
D'--E' (feature)
ප්රශ්නය: දත්ත උපස්ථ කිරීමට මට අවශ්ය මේ මොහොතේ නව rebased featureසමග අතු git push origin feature, තල්ලුව ප්රතික්ෂේප ගස නිසා rebasing වෙනස් කර ඇති බැවින්. මෙය විසඳිය හැක්කේ සමඟ පමණි git push --force origin feature.
මට --forceඑය අවශ්ය බව නොදැන මම භාවිතා කිරීමට අකමැතියි. ඉතින්, මට එය අවශ්යද? ප්රතිප්රහාරයෙන් අනිවාර්යයෙන්ම ඇඟවෙන්නේ ඊළඟට පූර්ණ pushවිය යුතු බවයි --force?
මෙම ලක්ෂණය ශාඛා මට කිසිම ප්රශ්නයක් තියෙනවා ඒ නිසා, වෙනත් ඕනෑම devs සමග බෙදා නොවේ තත්වාකාර , බලය තල්ලුව ද සමග මම කිසිම දත්ත අහිමි යන්නේ නෑ, ප්රශ්නය තවත් සංකල්පීය වේ.