git 2.7 (Q4 2015) කෙලින්ම භාවිතා කරමින් ශාඛා වර්ග කිරීම හඳුන්වා දෙනු ඇත git branch
:
බලන්න aa3bc55 , aedcb7d , 1511b22 , f65f139 , ... (23 සැප්තැම්බර් 2015), aedcb7d කරන්න , 1511b22 කරන්න , ca41799 (2015 සැප්තැම්බර් 24), සහ commit f65f139 , ... (23 සැප්තැම්බර් 2015) කාර්තික් නායක ( KarthikNayak
) විසිනි.
(විසින් අලුතින් ඒකාබද්ධ ජූනි සී Hamano - gitster
- දී 7f11b48 සිදු , 15 ඔක්තෝබර් 2015)
විශේෂයෙන්, aedcb7d කරන්න :
branch.c
: ref-filter
API භාවිතා කරන්න
Refs වර්ග කිරීම හරහා නැවත යෙදීම සඳහා API branch.c
භාවිතා කරන්න ref-filter
. මෙය පුස්තකාලයට branch.c
ඇමතුම් මගින් ආදේශ කිරීම සඳහා භාවිතා කරන බොහෝ කේත ඉවත් කරයි ref-filter
.
එය විකල්පය එක් කරයි--sort=<key>
:
ලබා දී ඇති යතුර මත පදනම්ව වර්ග කරන්න. වටිනාකමේ අවරෝහණ පිළිවෙලට වර්ග කිරීමට
උපසර්ගය -
.
ඔබට --sort=<key>
විකල්පය කිහිප වතාවක් භාවිතා කළ හැකිය, එම අවස්ථාවේදී අවසාන යතුර ප්රාථමික යතුර බවට පත්වේ.
සහය දක්වන යතුරු ඇති ඒවාට සමාන වේgit for-each-ref
.
සම්පූර්ණ නැවත නම ( refs/...
උපසර්ගය ඇතුළුව ) මත පදනම්ව වර්ග කිරීම සඳහා ඇණවුම් පෙරනිමි . මෙම ලැයිස්තුව මුලින් වෙන් කරන ලද HEAD (තිබේ නම්), පසුව දේශීය ශාඛා සහ අවසානයේ දුරස්ථ ලුහුබැඳීමේ ශාඛා ලැයිස්තුගත කරයි.
මෙහි:
git branch --sort=-committerdate
නැතහොත් (Git 2.19 සමඟ පහත බලන්න)
# if you are sure to /always/ want to see branches ordered by commits:
git config --global branch.sort -committerdate
git branch
මෙයද බලන්න සිදු 9e46833 විසින් (30 ඔක්තෝබර් 2015) කාර්තික් නායක් ( KarthikNayak
) .
උදව්: ජූනියෝ සී හමානෝ ( gitster
) .
(විසින් අලුතින් ඒකාබද්ධ ජූනි සී Hamano - gitster
- දී 415095f සිදු නොවැම්බර් 2015, 03)
සංඛ්යාත්මක අගයන් අනුව වර්ග කිරීමේදී (උදා --sort=objectsize
) ref දෙකම එකම අගයක් දරණ විට ආපසු සංසන්දනයක් නොමැත. ජොහැන්නස් සික්ස්ට් ( $ gmane / 280117 ) විසින් පෙන්වා දී ඇති පරිදි මෙය අනපේක්ෂිත ප්රති results ල ලබා දිය හැකිය (එනම් සමාන අගයන් සහිත ලැයිස්තුගත කිරීමේ අනුපිළිවෙල කලින් තීරණය කළ නොහැක ).
එබැවින්, අනෙක් නිර්ණායක සමාන වන සෑම විටම නැවත නම මත පදනම්ව අකාරාදී සැසඳීමකට වැටීම .
$ git branch --sort=objectsize
* (HEAD detached from fromtag)
branch-two
branch-one
master
Git 2.19 සමඟ, වර්ග කිරීමේ අනුපිළිවෙල පෙරනිමියෙන් සැකසිය හැකිය.
git branch
එය config සහාය branch.sort
වැනි git tag
දැනටමත් config තිබූ, tag.sort
. සැමුවෙල් මාෆ්ටෝල් (``) විසින් කැපවූ 560ae1c (16 අගෝස්තු 2018)
බලන්න . (ඒකාබද්ධ කරන ලද්දේ ජූනියෝ සී හමානෝ - - in commit d89db6f , 27 අගෝස්තු 2018)
gitster
branch.sort:
මෙම විචල්යය මඟින් දර්ශනය වන විට ශාඛා වර්ග කිරීම පාලනය කරයි git-branch
.
ලබා දී ඇති " --sort=<value>
" විකල්පය නොමැතිව, මෙම විචල්යයේ අගය පෙරනිමිය ලෙස භාවිතා කරනු ඇත.
දුරස්ථ ශාඛා ලැයිස්තුගත කිරීමට, භාවිතා කරන්න git branch -r --sort=objectsize
. මෙම -r
ධජය දුරස්ථ ශාඛා වෙනුවට දේශීය ශාඛා ලැයිස්තු ගත කිරීම සඳහා එය හේතු වේ.
Git 2.27 (Q2 2020) සමඟ, " git branch
" සහ අනෙකුත් " for-each-ref
" ප්රභේදයන් --sort=<key>
වැඩි වන ප්රමුඛතා අනුපිළිවෙලෙහි බහුවිධ විකල්පයන් පිළිගත් නමුත්, එය --ignore-case
හැසිරවීම වටා බිඳීම් කිහිපයක් ඇති අතර, නැවත නම් කිරීම සමඟ ගැටගැසීම් සවි කර ඇත.
කැපවීම 7c5045f බලන්න , ජෙෆ් කිං ( ) විසින් 76f9e56 (2020 මැයි 03 ) කරන්න . (විසින් අලුතින් ඒකාබද්ධ ජූනි සී Hamano - - දී 6de1630 සිදු , 08 මැයි 2020)peff
gitster
ref-filter
: සියලු පරිශීලක වර්ග වලට පසුව පමණක් පසුබැසීම් නැවත නම් කිරීම වර්ග කරන්න
අත්සන් කළේ: ජෙෆ් කිං
සිදු 9e468334b4 ( " ref-filter
: අකාරාදී සංසන්දනය මත ෆෝල්බැක්", 2015-10-30, Git v2.7.0-rc0 - ඒකාබද්ධ ලැයිස්තුගත කණ්ඩායම # 10 ) refnames සංසන්දනය කිරීමට fallback කිරීමට ref-පෙරහන ගේ ආකාරයක ඉගැන්වූ සේක.
නමුත් එය වැරදි මට්ටමින් සිදු කළ අතර, --sort
සියලු වර්ගවල යතුරු අවසන් වූ පසු නොව, පරිශීලකයාගේ තනි යතුරක් සඳහා සංසන්දනය කිරීමේ ප්රති result ලය ඉක්මවා යයි .
මෙය තනි " --sort
" විකල්පයක් සඳහා නිවැරදිව ක්රියා කළ නමුත් බහු ඒවා සඳහා නොවේ.
අපි පළමු යතුරේ ඇති නම නැවත නම් කිරීම සමඟ බිඳ දමනු ඇති අතර දෙවන යතුර කිසි විටෙකත් තක්සේරු නොකරමු.
කාරණා වඩාත් සිත්ගන්නාසුළු කිරීම සඳහා, අපි මෙම පසුබෑම සමහර විට පමණක් ක්රියාත්මක කළෙමු! නූල් සැසඳීමක් අවශ්ය වන
" taggeremail
" වැනි ක්ෂේත්රයක් සඳහා, අපි එහි ප්රති result strcmp()
ලය 0 ක් වුවද සැබවින්ම ලබා දෙන්නෙමු.
නමුත් සංඛ්යාත්මක " value
" " " වැනි ක්ෂේත්ර සඳහා taggerdate
, අපි පසුබෑම යෙදුවෙමු. අපගේ බහුවිධ වර්ගීකරණ පරීක්ෂණය මෙය මග හැරියේ එබැවිනි: එය taggeremail
ප්රධාන සංසන්දනය ලෙස භාවිතා කරයි .
එබැවින් වඩාත් දැඩි පරීක්ෂණයක් එකතු කිරීමෙන් ආරම්භ කරමු. ටැගර් ඊමේල්, දිනයන් සහ නැවත නම් කිරීම් දෙකක සෑම සංයෝජනයක්ම ප්රකාශ කරන කොමිස් කට්ටලයක් අප සතුව ඇත. එවිට අපගේ වර්ග කිරීම නිවැරදි පූර්වාදර්ශයකින් ක්රියාත්මක වන බව අපට තහවුරු කළ හැකි අතර, අපි නූල් සහ අගය සංසන්දකයන්ට පහර දෙමු.
එය දෝෂය පෙන්වන අතර නිවැරදි කිරීම සරල ය: compare_refs()
සියලු ref_sorting
යතුරු අවසන් වූ පසු පිටත ශ්රිතයට පසුබෑම ගෙනයාම .
පිටත ශ්රිතයේ අපට "ignore_case"
ධජයක් නොමැති බව සලකන්න , එය එක් එක් ref_sorting
මූලද්රව්යයේ කොටසකි . ගැලපීම සඳහා අපි පරිශීලකයාගේ යතුරු භාවිතා නොකළ බැවින් එවැනි පසුබෑමක් කළ යුත්තේ කුමක් ද යන්න විවාදාත්මක ය.
නමුත් මේ වන තෙක් අපි එම ධජයට ගරු කිරීමට උත්සාහ කර ඇත්තෙමු, එබැවින් අවම ආක්රමණශීලී දෙය වන්නේ එය දිගටම කරගෙන යාමට උත්සාහ කිරීමයි.
වත්මන් කේතයේ සියලුම ඇමතුම්කරුවන් සියලු යතුරු සඳහා ධජය සකසා ඇති නිසා හෝ කිසිවක් සඳහා, අපට පළමු යතුරෙන් ධජය අදින්න පුළුවන්. යතුරු වල සිද්ධි-සංවේදීතාව වෙන වෙනම පෙරළා දැමිය හැකි උපකල්පිත ලෝකයක, එම අවස්ථාව බ්ලැන්කට්ටුවකින් වෙන්කර හඳුනා ගැනීම සඳහා කේතය දීර් extend කිරීමට අපට අවශ්ය විය හැකිය --ignore-case
.