Git கமிட் நீக்குதலைப் புரிந்துகொள்வது
உங்கள் Git கிளை வரலாற்றை திறம்பட நிர்வகிப்பது சுத்தமான மற்றும் ஒழுங்கமைக்கப்பட்ட திட்டத்தைப் பராமரிப்பதற்கு முக்கியமானது. சில நேரங்களில், மாற்றங்களைச் செயல்தவிர்க்க அல்லது உங்கள் உறுதி வரலாற்றை சுத்தம் செய்ய உங்கள் கிளையிலிருந்து ஒரு குறிப்பிட்ட உறுதிமொழியை நீக்க வேண்டியிருக்கலாம்.
இந்த வழிகாட்டியில், பொதுவாக குறிப்பிடப்படும் `git reset --hard HEAD` உட்பட பல்வேறு Git கட்டளைகளைப் பயன்படுத்துவதைப் பற்றி விவாதிக்கும் Git கிளையிலிருந்து ஒரு உறுதிப்பாட்டை பாதுகாப்பாக அகற்றுவதற்கான படிகளை ஆராய்வோம். முடிவில், உங்கள் கடமைகளை எவ்வாறு திறமையாக நிர்வகிப்பது என்பது பற்றிய தெளிவான புரிதல் உங்களுக்கு இருக்கும்.
கட்டளை | விளக்கம் |
---|---|
git log | களஞ்சியத்திற்கான உறுதி வரலாற்றைக் காட்டுகிறது. |
git reset --hard <commit_hash> | தற்போதைய கிளையை குறிப்பிட்ட உறுதிக்கு மீட்டமைக்கிறது, அந்த உறுதிப்பாட்டிற்குப் பிறகு அனைத்து மாற்றங்களையும் நிராகரிக்கிறது. |
git push origin HEAD --force | உள்ளூர் களஞ்சியத்துடன் பொருந்துமாறு ரிமோட் களஞ்சியத்தை வலுக்கட்டாயமாக புதுப்பிக்கிறது. |
git reset --hard HEAD~1 | மாற்றங்களை நிராகரித்து, மிகச் சமீபத்திய உறுதிப்பாட்டிற்கு சற்று முன் தற்போதைய கிளையை கமிட்டிற்கு மீட்டமைக்கிறது. |
git revert <commit_hash> | குறிப்பிட்ட கமிட் மூலம் அறிமுகப்படுத்தப்பட்ட மாற்றங்களைச் செயல்தவிர்க்கும் புதிய உறுதிமொழியை உருவாக்குகிறது. |
Git கமிட் அகற்றும் நுட்பங்களைப் புரிந்துகொள்வது
மேலே கொடுக்கப்பட்டுள்ள ஸ்கிரிப்ட்கள் Git கிளையிலிருந்து கமிட்களை நீக்க அல்லது மாற்றுவதற்கான இரண்டு முதன்மை முறைகளை விளக்குகின்றன. முதல் முறை பயன்படுத்தப்படுகிறது git reset --hard வரலாற்றிலிருந்து உறுதிமொழிகளை முற்றிலுமாக அகற்ற வேண்டும். பயன்படுத்தி git log, நீங்கள் மீட்டமைக்க விரும்பும் குறிப்பிட்ட கமிட் ஹாஷை நீங்கள் அடையாளம் காணலாம். கட்டளை git reset --hard <commit_hash> உங்கள் கிளையை அந்த உறுதிக்கு மீட்டமைத்து, அனைத்து அடுத்தடுத்த மாற்றங்களையும் திறம்பட நிராகரிக்கும். இந்த முறை தேவையற்ற மாற்றங்களை நிரந்தரமாக நீக்குவதற்கு மிகவும் பயனுள்ளதாக இருக்கும் git push origin HEAD --force ரிமோட் களஞ்சியத்தை புதுப்பிக்க, அனைத்து குளோன் செய்யப்பட்ட களஞ்சியங்களிலும் மாற்றங்கள் பிரதிபலிக்கப்படுவதை உறுதி செய்கிறது.
இரண்டாவது முறை பயன்படுத்தப்படுகிறது git revert முந்தைய கமிட் மூலம் அறிமுகப்படுத்தப்பட்ட மாற்றங்களைச் செயல்தவிர்க்கும் புதிய உறுதிமொழியை உருவாக்க. இந்த அணுகுமுறை மிகவும் பழமைவாதமானது, ஏனெனில் இது தேவையற்ற உறுதிப்பாட்டின் விளைவுகளை ரத்து செய்யும் அதே வேளையில் உறுதிமொழி வரலாற்றைப் பாதுகாக்கிறது. உடன் கமிட் ஹாஷை அடையாளம் காண்பதன் மூலம் git log மற்றும் பயன்படுத்தி git revert <commit_hash>, ஏற்கனவே உள்ள கமிட் வரலாற்றை மாற்றாமல் மாற்றங்களை திறம்பட மாற்றலாம். இந்த முறை எளிமையானது பின்பற்றப்படுகிறது git push origin main ரிமோட் களஞ்சியத்துடன் மாற்றங்களை ஒத்திசைக்க. சுத்தமான மற்றும் நிர்வகிக்கக்கூடிய திட்ட வரலாற்றை பராமரிக்க இரண்டு முறைகளும் முக்கியமானவை.
ஒரு Git கிளையிலிருந்து ஒரு உறுதிப்பாட்டை எவ்வாறு அகற்றுவது
Git கட்டளைகளைப் பயன்படுத்துதல்
# Navigate to your repository
cd /path/to/your/repo
# Use git log to find the commit hash you want to remove
git log
# Reset to the commit just before the one you want to remove
git reset --hard <commit_hash>
# Push the changes to the remote repository
git push origin HEAD --force
# If you only want to remove the last commit
git reset --hard HEAD~1
# Verify the commit has been removed
git log
ஒரு உறுதிமொழியை மாற்றுவதற்கான மாற்று முறை
Git Revert ஐப் பயன்படுத்துதல்
# Navigate to your repository
cd /path/to/your/repo
# Use git log to find the commit hash you want to revert
git log
# Revert the commit by creating a new commit that undoes the changes
git revert <commit_hash>
# Push the changes to the remote repository
git push origin main
# Verify the changes
git log
கூடுதல் Git கமிட் மேலாண்மை நுட்பங்களை ஆராய்தல்
Git இல் கமிட்களை நிர்வகிப்பதற்கான மற்றொரு முறை ஊடாடும் மறுபேஸ் கட்டளையைப் பயன்படுத்துகிறது. தி git rebase -i கட்டளை உங்கள் கிளை வரலாற்றில் மீண்டும் ஆர்டர் செய்ய, ஸ்குவாஷ் அல்லது திருத்தம் செய்ய அனுமதிக்கிறது. நீங்கள் பல சிறிய கமிட்களை ஒரு ஒற்றை, அதிக அர்த்தமுள்ள உறுதியுடன் இணைக்க விரும்பும் போது அல்லது வரலாற்றில் இருந்து ஒரு குறிப்பிட்ட உறுதிப்பாட்டை நீக்க வேண்டியிருக்கும் போது இது மிகவும் பயனுள்ளதாக இருக்கும். ஊடாடும் மறுதளத்தைத் தொடங்க, நீங்கள் பயன்படுத்துவீர்கள் git rebase -i HEAD~n, "n" என்பது நீங்கள் மதிப்பாய்வு செய்ய விரும்பும் கமிட்களின் எண்ணிக்கை. இது ஒரு எடிட்டரைத் திறக்கும், அங்கு நீங்கள் தேவைக்கேற்ப கமிட்களை மாற்றலாம்.
ஊடாடும் மறுசீரமைப்பு ஒரு சக்திவாய்ந்த கருவியாகும், ஆனால் முரண்பாடுகளைத் தவிர்ப்பதற்கும் உங்கள் உறுதிப்பாட்டின் ஒருமைப்பாட்டைப் பேணுவதற்கும் கவனமாகக் கையாளுதல் தேவைப்படுகிறது. ஊடாடும் மறுசீரமைப்பைப் பயன்படுத்தும் போது, பகிரப்பட்ட கிளையின் உறுதி வரலாற்றை மாற்றுவது மற்ற கூட்டுப்பணியாளர்களைப் பாதிக்கும் என்பதை நினைவில் கொள்வது அவசியம். எப்போதும் உங்கள் குழுவுடன் தொடர்பு கொண்டு, உள்ளூர் அல்லது அம்சக் கிளைகளில் மட்டும் மறுபரிசீலனை செய்ய வேண்டும். மறுசீரமைப்பை முடித்த பிறகு, நீங்கள் பயன்படுத்தலாம் git push origin branch-name --force தொலை களஞ்சியத்தை புதுப்பிக்க.
Git Commit Management பற்றிய பொதுவான கேள்விகள்
- என்ன வித்தியாசம் git reset மற்றும் git revert?
- git reset கிளை வரலாற்றில் இருந்து கமிட்களை நீக்குகிறது git revert மாற்றங்களைச் செயல்தவிர்க்கும் புதிய உறுதிமொழியை உருவாக்குகிறது.
- மாற்றங்களை இழக்காமல், கடைசியாக செய்த உறுதியை நான் எவ்வாறு செயல்தவிர்க்க முடியும்?
- பயன்படுத்தவும் git reset --soft HEAD~1 கடைசி உறுதியை செயல்தவிர்க்க ஆனால் உங்கள் பணி அடைவில் மாற்றங்களை வைத்திருக்கவும்.
- பயன்படுத்துவது பாதுகாப்பானதா git reset --hard?
- குறிப்பிட்ட உறுதிப்பாட்டிற்குப் பிறகு எல்லா மாற்றங்களையும் நிராகரிக்க விரும்புகிறீர்கள் என்பதில் உறுதியாக இருந்தால், குறிப்பாக பகிரப்பட்ட கிளைகளில் எச்சரிக்கையுடன் பயன்படுத்தவும்.
- என்ன செய்கிறது git rebase -i செய்?
- மறுவரிசைப்படுத்துதல், கமிட் செய்தல் அல்லது கமிட்களை அகற்றுதல் உள்ளிட்ட கமிட் வரலாற்றை ஊடாடும் வகையில் திருத்த இது உங்களை அனுமதிக்கிறது.
- மறுசீரமைப்பின் போது முரண்பாடுகளை எவ்வாறு தீர்ப்பது?
- உங்கள் எடிட்டரில் கைமுறையாக முரண்பாடுகளைத் தீர்த்து, பிறகு பயன்படுத்தலாம் git rebase --continue தொடர.
- ஐ நான் செயல்தவிர்க்க முடியுமா? git reset?
- நீங்கள் இன்னும் ஓடவில்லை என்றால் மட்டுமே git gc அல்லது git prune, நீங்கள் பயன்படுத்தி இழந்த கமிட்களை மீட்டெடுக்க முடியும் git reflog.
Git கமிட்களை நிர்வகிப்பதற்கான இறுதி எண்ணங்கள்
ஒரு சுத்தமான மற்றும் திறமையான களஞ்சியத்தை பராமரிப்பதற்கு Git இல் கமிட்களை சரியாக நிர்வகிப்பது அவசியம். நீங்கள் நீக்குவதைத் தேர்வுசெய்தாலும் அது உறுதியானது git reset, உடன் மாற்றங்களை செயல்தவிர் git revert, அல்லது உங்கள் வரலாற்றை ஊடாடுதல் மறுவடிவமைப்புடன் செம்மைப்படுத்துங்கள், ஒவ்வொரு முறையும் அதன் பயன்பாட்டு நிகழ்வுகளைக் கொண்டுள்ளது. பகிரப்பட்ட கிளைகளை மாற்றும்போது உங்கள் குழுவுடன் தொடர்புகொள்வதும், இந்த சக்திவாய்ந்த கட்டளைகளை பொறுப்புடன் பயன்படுத்துவதும் முக்கியம். இந்த நுட்பங்களை மாஸ்டரிங் செய்வதன் மூலம், நீங்கள் மிகவும் ஒழுங்கமைக்கப்பட்ட மற்றும் நம்பகமான பதிப்பு கட்டுப்பாட்டு அமைப்பை உறுதிசெய்யலாம், இறுதியில் மென்மையான வளர்ச்சி பணிப்பாய்வுகளுக்கு வழிவகுக்கும்.