கிட்டத்தட்ட அனைத்து பதிப்பு கட்டுப்பாட்டு அமைப்புகளும் கிளை விருப்பங்கள் உள்ளன. ஆனால் Git அதன் வேகமான கிளை திறன்களுக்கு பெயர் பெற்றது. கிட் கிளைகள் இலகுரக. எனவே கிளைகளுக்கான செயல்திறன் அபராதம் குறைவாக உள்ளது மற்றும் வளர்ச்சி குழுக்கள் முடிந்தவரை கிளை மற்றும் ஒன்றிணைக்க ஊக்குவிக்கப்படுகிறது. ஆனால் நீங்கள் பல கிளைகளுடன் பணிபுரியும் போது, வேறுபாடுகளை ஒப்பிட்டுப் பார்ப்பது முக்கியம். இந்த டுடோரியலில், பல்வேறு கிளைகள் மற்றும் கடமைகளை எவ்வாறு ஒப்பிட்டுப் பார்க்க முடியும் என்பதை அறிய ஒரு பணிப்பாய்வு மூலம் செல்வோம். முதலில் பின்வரும் சூழ்நிலையை அமைப்போம்:
C00 => C01 => C03 => C06 (முதன்மை)
C02 => C04 => C05 (வளர்ச்சி)
பின்வரும் நடவடிக்கைகள் எடுக்கப்பட்டன:
- C00: hello_world.py (முதன்மை கிளை) சேர்க்கப்பட்டது
- - வளர்ச்சி கிளையை உருவாக்கியது
- C01: இரண்டாவது வணக்கம் (முதன்மை கிளை) சேர்க்க hello_world.py மாற்றப்பட்டது
- C02: அபிவிருத்தி கிளையைச் சேர்க்க hello_world.py மாற்றப்பட்டது
- C03: readme.txt சேர்க்கப்பட்டது (முதன்மை கிளை)
- C4
- C05: info.txt சேர்க்கப்பட்டது (வளர்ச்சி கிளை)
- C06: இரண்டாவது வரியைச் சேர்ப்பதற்கு readme.txt மாற்றப்பட்டது (முதன்மை கிளை)
அனைத்து கமிட்டுகளுக்கும் பிறகு, 'மாஸ்டர்' கிளையில் பின்வரும் கோப்புகள் உள்ளன:
வணக்கம்_உலகம்
readme.txt
மேலும் 'வளர்ச்சி' கிளையில் பின்வரும் கோப்புகள் உள்ளன:
வணக்கம்_உலகம்
info.txt
இரண்டு கிளைகளின் தலைகளை ஒப்பிடுதல்
இரண்டு கிளைகளின் தலைகளை ஒப்பிட நீங்கள் கிளைகளின் பெயரைப் பயன்படுத்தலாம்:
$git வேறுபாடுமாஸ்டர்..வளர்ச்சிவேறுபாடு --போக்கு/வணக்கம்_உலகம்/வணக்கம்_உலகம்
குறியீட்டு e27f806..3899ed3100644
---க்கு/வணக்கம்_உலகம்
+++ ஆ/வணக்கம்_உலகம்
@@-2,7+2,7 @@
def முக்கிய():
அச்சு('முதல் வணக்கம்!')
- அச்சு('இரண்டாவது வணக்கம்!')
-
+ அச்சு('வளர்ச்சி கிளை வணக்கம்')
+ அச்சு(அபிவிருத்தி கிளை மீண்டும் வணக்கம் சொல்கிறது)
என்றால்__ பெயர்__ =='__main__':
முக்கிய()
வேறுபாடு --போக்கு/தகவல். உரை ஆ/info.txt
புதியகோப்புமுறை100644
குறியீடு 0000000..0ab52fd
--- /தேவ்/ஏதுமில்லை
+++ ஆ/info.txt
@@-0,0+1 @@
+புதிய தகவல்
வேறுபாடு --போக்கு/readme.txt b/readme.txt
நீக்கப்பட்டதுகோப்புமுறை100644
அட்டவணை e29c296..0000000
---க்கு/readme.txt
+++/தேவ்/ஏதுமில்லை
@@-1,2+0,0 @@
-1Readme.txt இன் முதல் வரி
-2Readme.txt இன் இரண்டாவது வரி
மாறுபட்ட கட்டளை மாற்றங்களை மீண்டும் மீண்டும் பார்க்கிறது. இது பின்வரும் வேறுபாடுகளைக் கொண்டுள்ளது:
வேறுபாடு - a/hello_world.py b/hello_world.py
வேறுபாடு - a/info.txt b/info.txt
வேறுபாடு -git a/readme.txt b/readme.txt
இங்கு ‘அ’ என்பது ‘மாஸ்டர்’ கிளையையும் ‘ஆ’ என்பது வளர்ச்சி கிளையையும் குறிக்கிறது. 'A' எப்போதும் முதல் அளவுருவுக்கும் 'b' இரண்டாவது அளவுருக்களுக்கும் ஒதுக்கப்படும். /Dev /null என்றால் கிளைக்கு கோப்பு இல்லை.
கமிட்டுகளுக்கு இடையில் ஒப்பிடுவது
எங்கள் எடுத்துக்காட்டில், 'மாஸ்டர்' கிளை பின்வரும் கமிட்டுகளைக் கொண்டுள்ளது:
$git நிலைகிளை மாஸ்டர் மீது
செய்ய எதுவும் இல்லை, அடைவு சுத்தமாக வேலை செய்கிறது
$git பதிவு --ஒன்லைன்
caa0ddd C06: இரண்டாவது வரியைச் சேர்க்க readme.txt மாற்றப்பட்டது(முதன்மை கிளை)
efaba94 C03: readme.txt சேர்க்கப்பட்டது(முதன்மை கிளை)
ee60eac C01: இரண்டாவது வணக்கம் சேர்க்க hello_world.py மாற்றப்பட்டது(முதன்மை கிளை)
22b4bf9 C00: hello_world.py சேர்க்கப்பட்டது(முதன்மை கிளை)
மேம்பாட்டு கிளை பின்வரும் கடமைகளைக் கொண்டுள்ளது:
$git நிலைகிளை வளர்ச்சி குறித்து
செய்ய எதுவும் இல்லை, அடைவு சுத்தமாக வேலை செய்கிறது
$git பதிவு --ஒன்லைன்
df3a4ee C05: info.txt சேர்க்கப்பட்டது(வளர்ச்சி கிளை)
0f0abb8 C04: மேம்பட்ட கிளையைச் சேர்க்க மாற்றியமைக்கப்பட்ட hello_world.py மீண்டும் வணக்கம் என்கிறது(வளர்ச்சி கிளை)
3f611a0 C02: அபிவிருத்தி கிளையைச் சேர்க்க மாற்றியமைக்கப்பட்ட hello_world.py வணக்கம் என்கிறார்(வளர்ச்சி கிளை)
22b4bf9 C00: hello_world.py சேர்க்கப்பட்டது(முதன்மை கிளை)
C01 மற்றும் C02 கமிட்டுகளுக்கான hello_world.py ஐ ஒப்பிட விரும்புகிறோம் என்று வைத்துக்கொள்வோம். ஒப்பிடுவதற்கு நீங்கள் ஹாஷ்களைப் பயன்படுத்தலாம்:
$git வேறுபாடுee60eac: hello_world.py 3f611a0: hello_world.pyவேறுபாடு --போக்கு/ee60eac: hello_world.py பி/3f611a0: வணக்கம்_உலகம்
குறியீட்டு e27f806..72a178d100644
---க்கு/ee60eac: hello_world.py
+++ ஆ/3f611a0: வணக்கம்_உலகம்
@@-2,7+2,7 @@
def முக்கிய():
அச்சு('முதல் வணக்கம்!')
- அச்சு('இரண்டாவது வணக்கம்!')
+ அச்சு('வளர்ச்சி கிளை வணக்கம்')
என்றால்__ பெயர்__ =='__main__':
முக்கிய()
அதே கிளைக்குள் உள்ள உறுதிப்பாடுகளை ஒப்பிடுவதற்கு நீங்கள் அதே கொள்கையைப் பயன்படுத்தலாம்.
காட்சி இணைப்பு கருவிகள்
உரை அடிப்படையிலான ஒப்பீடுகளைப் பார்ப்பது கடினமாக இருக்கும். நீங்கள் கிட் அமைத்தால் டிஃப்டூல் போன்ற ஒரு காட்சி இணைப்பு பயன்பாடு DiffMerge அல்லது அப்பால் ஒப்பிடு , நீங்கள் வேறுபாடுகளை சிறப்பாக பார்க்க முடியும்.
மேலதிக ஆய்வு:
குறிப்புகள்:
- கிட் டுடோரியல்: வேறுபாடுகள் மற்றும் ஒன்றிணைக்கும் கருவிகள் , வலைஒளி
- http://coding4streetcred.com/blog/post/configure-diffmerge-for-your-git-difftool
- http://gitbaby.com/ how-to-diff-one-file-to-an-arbitrary-version-in-git.html
- https://git-scm.com/book/en/v2/Git-Branching-Basic-Branching-and-Merging
- https://git-scm.com/book/id/v2/Git-Branching-Branches-in-a-Nutshell
- https://git-scm.com/docs/git-diff
- https://git-scm.com/docs/git-difftool
- https://sourcegear.com/diffmerge/
- https://sourcegear.com/diffmerge/webhelp/sec__git__linux.html
- https://stackoverflow.com/questions/9834689/comparing-two-branches-in-git
- https://veerasundar.com/blog/2011/06/git-tutorial-comparing-files-with-diff/
- https://www.scootersoftware.com/features.php
- https://www.scootersoftware.com/support.php?zz=kb_vcs