રીબેઝ
Rebase
બીજી શાખામાંથી કમિટ લાગુ કરીને બ્રાન્ચનો કમિટ હિસ્ટ્રી બદલવાની પ્રક્રિયા છે. merge
ફેરફારોને જોડવા માટે ઉપયોગ કરવાને બદલે, rebase
તમને insert
મર્જ કમિટ બનાવ્યા વિના વર્તમાન શાખાના કમિટ ઇતિહાસમાં નવી કમિટ કરવાની મંજૂરી આપે છે.
ઉદાહરણ તરીકે, ચાલો કહીએ કે તમારી પાસે બે શાખાઓ છે: feature-branch
અને main
. તમે કામ કરી રહ્યા છો અને તમારી વર્તમાન શાખામાં feature-branch
નવીનતમ કમિટ્સને લાગુ કરવા માંગો છો. main
આ હાંસલ કરવા માટે તમે રીબેઝનો ઉપયોગ કરી શકો છો:
git checkout feature-branch
git rebase main
જ્યારે તમે આ કમાન્ડ ચલાવો છો, ત્યારે Git કમિટ્સમાંથી કમિટ લેશે main
અને તેને પર લાગુ કરશે feature-branch
. આનો અર્થ એ છે કે પરના તમામ કમિટ્સ feature-branch
માંથી કમિટ થયા પછી દેખાશે main
. પરિણામ ક્લીનર અને વધુ વાંચી શકાય તેવું પ્રતિબદ્ધ ઇતિહાસ છે feature-branch
.
જો કે, રીબેઝનો ઉપયોગ કરતી વખતે, એ નોંધવું અગત્યનું છે કે પ્રતિબદ્ધ ઇતિહાસ બદલવાથી સાર્વજનિક રીતે વહેંચાયેલ શાખાઓને અસર થઈ શકે છે. તેથી, જો તમે પહેલેથી જ તમારી વર્તમાન શાખામાંથી રિમોટ રિપોઝીટરીમાં કમિટ્સને ધકેલ્યા હોય, તો સામાન્ય રીતે તકરાર અને અવ્યવસ્થિત પ્રતિબદ્ધ ઇતિહાસને ટાળવા માટે તે શાખા પર રીબેઝનો ઉપયોગ ન કરવાની સલાહ આપવામાં આવે છે.
Branch
સ્વિચિંગ
Git માં શાખા સ્વિચિંગ એ એક શાખામાંથી બીજી શાખામાં જવાની પ્રક્રિયાનો સંદર્ભ આપે છે. જ્યારે તમે શાખાઓ સ્વિચ કરો છો, ત્યારે ગિટ HEAD પોઇન્ટરને નવી શાખામાં ખસેડે છે, જેનાથી તમે તે શાખા પર કામ કરી શકો છો અને અન્ય શાખાઓને અસર કર્યા વિના ફેરફારો કરી શકો છો.
ઉદાહરણ તરીકે, ચાલો કહીએ કે તમારી પાસે શાખાઓ છે feature-branch
અને main
. પર સ્વિચ કરવા માટે feature-branch
, તમે નીચેના આદેશનો ઉપયોગ કરશો:
git checkout feature-branch
શાખાઓ સ્વિચ કર્યા પછી, તમે કાર્યકારી નિર્દેશિકામાં ફેરફારો કરી શકો છો. બધા commit
, add
, અને checkout
આદેશો વર્તમાન શાખા પર લાગુ થશે.
ઉદાહરણ તરીકે, જો તમે નવી ફાઈલ ઉમેરો અને તેને પર કમિટ કરો feature-branch
, તો માત્ર તે શાખામાં કમિટ હશે, જ્યારે main
તે અપ્રભાવિત રહેશે. આ તમને અલગ સુવિધાઓ વિકસાવવા, ભૂલો સુધારવા અથવા કોડના વિવિધ સંસ્કરણો પર સ્વતંત્ર રીતે કાર્ય કરવાની મંજૂરી આપે છે. જ્યારે પણ દરેક શાખા પર અલગથી કામ કરવાની જરૂર પડે ત્યારે તમે શાખાઓ વચ્ચે સ્વિચ કરી શકો છો.