మీరు అన్ని కమిట్‌లను ఒకదానిలో ఎలా స్క్వాష్ చేస్తారు?

How Do You Squash All Commits One



Git స్క్వాష్ అనేది ఒక టెక్నిక్, ఇది మీరు కమిట్‌లపై వరుస మార్పులు చేయడానికి మరియు దానిని ఒక కమిట్‌గా ఏకీకృతం చేయడానికి అనుమతిస్తుంది. ఒక ఉదాహరణ సహాయంతో వివరిద్దాం, మీకు n సంఖ్యలో కమిట్‌లు ఉన్నాయని అనుకుందాం మరియు మీరు వాటిపై git స్క్వాషింగ్‌ను వర్తింపజేసినప్పుడు, మీరు అన్ని ‘n’ కమిట్‌లను కేవలం ఒకే కమిట్‌గా స్క్వాష్ చేయవచ్చు లేదా కంప్రెస్ చేయవచ్చు. Git స్క్వాష్ అనేక పెద్ద కమిట్‌లను ఒక చిన్న అర్థవంతమైన కమిట్‌గా మార్చడానికి ఉపయోగించబడుతుంది. కాబట్టి, మీరు జిట్ లాగ్‌ను మరింత స్పష్టంగా చేయవచ్చు. మీరు స్క్వాషింగ్ టెక్నిక్ ఉపయోగించి శాఖలను కూడా విలీనం చేయవచ్చు. ఎల్లప్పుడూ కట్టుబాట్లను స్క్వాష్ చేయడం మరియు మాస్టర్ లేదా మాతృ శాఖతో రీబేస్ చేయడం ఉత్తమ పద్ధతి.

Git లో ఒకే కమిట్‌లో అన్ని కమిట్‌లను ఎలా స్క్వాష్ చేయాలో ఈ వ్యాసం మీకు వివరిస్తుంది. మేము సెంటొస్ 8 లైనక్స్ పంపిణీపై అన్ని దశలను అమలు చేసాము.







స్క్వాష్ జిట్‌తో ఒకదానికి కట్టుబడి ఉంటుంది

మీరు కింది దశల్లో git స్క్వాషింగ్‌ను అమలు చేయవచ్చు:



దశ 1: ప్రారంభ నిబద్ధతను ఎంచుకోండి

మీరు స్క్వాష్ చేయడానికి ఎన్ని కమిట్‌లు ఉన్నాయో తెలుసుకోవడానికి, కింది ఆదేశాన్ని మీరు టెర్మినల్‌లో అమలు చేస్తారు:



$ git లాగ్





ఇప్పుడు, కింది ఆదేశాన్ని ఉపయోగించడం ద్వారా ఇంటరాక్టివ్ రీబేస్ సెషన్‌ను ప్రారంభించడానికి మీరు git ని ఆహ్వానిస్తారు:

$ git రీబేస్ -i HEAD ~ N

పై HEAD ~ N లో, ‘n’ అనేది ‘git log’ కమాండ్ నుండి మీరు నిర్ణయించిన మొత్తం కమిట్‌ల సంఖ్య. అనుకుందాం, కట్టుబాట్ల సంఖ్య 4. ఇప్పుడు, కమాండ్ కింది రూపంలోకి మారుతుంది:

$ git రీబేస్ -i HEAD ~ 4

కింది కమిట్‌ల జాబితా టెర్మినల్‌లో ప్రదర్శించబడుతుంది, ఇక్కడ ప్రతి ఒక్కరూ పదం ఎంపికతో చూస్తూ ఉంటారు.

దశ 2: పిక్‌ను స్క్వాష్‌గా మార్చండి

ఇక్కడ, మేము అన్ని కమిట్‌లను స్క్వాషబుల్‌గా మార్క్ చేస్తాము, ప్రారంభ పాయింట్‌గా ఉపయోగించబడే మొదటి కమిట్‌ని వదిలివేస్తాము. కాబట్టి, 'i' నొక్కడం ద్వారా విమ్ ఎడిటర్‌ను ఇన్సర్ట్ మోడ్‌లోకి మార్చండి మరియు మొదటి కమిట్ మినహా మొత్తం పిక్ కమిట్‌ను స్క్వాష్‌గా మార్చండి. ఇప్పుడు, ఇన్సర్ట్ మోడ్‌ని మార్చడానికి 'Esc' నొక్కండి మరియు అన్ని మార్పులను సేవ్ చేయడానికి ': wq!' నొక్కండి మరియు నిష్క్రమించండి. మీరు సాధారణ టెక్స్ట్ ఎడిటర్‌ని ఉపయోగిస్తుంటే, మీరు 'పిక్' పదాన్ని 'స్క్వాష్' గా మార్చి, మార్పులను సేవ్ చేయవచ్చు. ఆ తరువాత, మీరు టెర్మినల్‌లో కింది విండోను చూస్తారు:

మీరు ఈ షెల్‌ని విడిచిపెట్టినప్పుడు, మీరు టెర్మినల్ విండోలో కింది సందేశాలను చూస్తారు:

మీరు అన్నింటినీ స్క్వాష్ చేస్తే, టెర్మినల్‌లో ప్రదర్శించే ఒకే కమిట్ స్టేట్‌మెంట్‌లో అన్ని కమిట్‌లను కలిపి మీరు చూస్తారు:

ముగింపు

గిట్ స్క్వాష్‌ని ఉపయోగించడం ద్వారా, మీరు అనేక కమిట్‌లను చిన్న సింగిల్ కమిట్‌గా సులభంగా స్క్వాష్ చేయవచ్చు లేదా కంప్రెస్ చేయవచ్చు. డాక్యుమెంటేషన్ స్పెల్లింగ్ తప్పులను పరిష్కరించడానికి మీరు ఈ టెక్నిక్‌ను ఉపయోగించవచ్చు. మేము ఈ వ్యాసంలో జిట్ స్క్వాష్‌ను అమలు చేసాము. మేము git రీబేస్ మరియు స్క్వాష్ ఆదేశాలను ఉపయోగించి చరిత్రను ఎలా శుభ్రపరచవచ్చో కూడా చూశాము.