Git ශාඛා නම් කිරීම සඳහා බහුලව භාවිතා වන භාවිතයන් සඳහා උදාහරණ මොනවාද? [වසා ඇත]


1148

මම දැන් මාස කිහිපයක් තිස්සේ මගේ කණ්ඩායමේ සීවීඑස් නිධිය සමඟ අන්තර් ක්‍රියා කරන දේශීය ගිට් ගබඩාවක් භාවිතා කරමි. මම ස්නායු ශාඛා සංඛ්‍යාවක් පාහේ සාදා ඇති අතර ඒවායින් බොහොමයක් ස්තූතිවන්තව මගේ කඳට නැවත ඒකාබද්ධ වී ඇත. නමුත් නම් කිරීම ගැටලුවක් බවට පත්වෙමින් තිබේ. මට සරල ලේබලයකින් පහසුවෙන් නම් කළ හැකි කාර්යයක් තිබේ නම්, නමුත් මම එය අදියර තුනකින් ඉටු කරමි, ඒ සෑම එකක්ම ඔවුන්ගේම ශාඛා හා ඒකාබද්ධ කිරීමේ තත්වය ඇතුළත් වේ, එවිට මට සෑම විටම ශාඛා නාමය පුනරාවර්තනය කළ හැකිය, නමුත් එමඟින් ඉතිහාසය ටිකක් අවුල් සහගත වේ. එක් එක් අදියර සඳහා වෙනම විස්තරයක් සහිතව මම නම් වලින් වඩාත් නිශ්චිතව ලබා ගන්නේ නම්, ශාඛා නාම දිගු හා නොසැලකිලිමත් වීමට පටන් ගනී.

මම මෙහි පැරණි නූල් දෙස බැලීමට ඉගෙන ගත්තා, මට අකුරක් / නමින්, එනම් මාතෘකාව / කර්තව්‍යය හෝ එවැනි දෙයක් සමඟ නම් කිරීම ආරම්භ කළ හැකිය. මම එය කිරීමට පටන් ගෙන එය වඩා හොඳින් සංවිධානාත්මකව තබා ගැනීමට උපකාරී වේදැයි බැලීමට පටන් ගත හැකිය.

Git ශාඛා නම් කිරීම සඳහා හොඳම භාවිතයන් මොනවාද?

සංස්කරණය කරන්න: කිසිවෙකු ඇත්ත වශයෙන්ම නම් කිරීමේ සම්මුතීන් යෝජනා කර නැත. මම ඒවා සමඟ කටයුතු කළ විට ශාඛා මකා දමමි. කළමනාකරණය විසින් මගේ ප්‍රමුඛතා නිරන්තරයෙන් වෙනස් කිරීම නිසා මට කිහිපයක් තිබේ. :) මට කර්තව්‍යයකට එක් ශාඛාවකට වඩා අවශ්‍ය වන්නේ ඇයිද යන්න පිළිබඳ උදාහරණයක් ලෙස, කාර්යයේ පළමු විවික්ත සන්ධිස්ථානය සමූහයේ සීවීඑස් ගබඩාවට භාර දිය යුතු යැයි සිතමු. එම අවස්ථාවේදී, සීවීඑස් සමඟ මගේ අසම්පූර්ණ අන්තර්ක්‍රියාකාරිත්වය නිසා, මම එම කැපවීම ඉටු කර එම ශාඛාව මරා දමමි. (එම අවස්ථාවේදීම එකම ශාඛාව දිගටම භාවිතා කිරීමට උත්සාහ කළහොත් සීවීඑස් සමඟ අන්තර් ක්‍රියා කරන බව මම දැක ඇත්තෙමි.)


ඔව් - ඔබ ඒවා ඉවර වූ පසු ප්‍රයෝජනවත් නොවන අතු වටේ තබා නොගැනීම හෝ තල්ලු නොකිරීම හොඳය. මාතෘකා ශාඛාවක් තබා ගැනීමට හොඳ හේතුවක් නොමැති නම් (උදා: පසුව එය විමසා බැලීම), එය මකා දැමීමේ කිසිදු ගැටළුවක් නොමැත. Git අතු බෙදීම පහසු කරයි, සහසම්බන්ධයක් නම්, ඔබට වටේට වැතිරී ඇති ඉතා සුළු අතු රාශියකින් අවසන් විය හැකි අතර එය එතරම් කරදරයකින් තොරව පිරිසිදු කළ හැකිය.
එරික් වෝකර්

15
මෙයද බලන්න github.com/agis-/git-style-guide
Agis

2
සම්පූර්ණත්වය සඳහා, ඔබට භාවිතා කළ නොහැකි චරිත අනුක්‍රම කිහිපයක් තිබේ.
නික් වෙස්ට්ගේට්

22
StackExchange ජාලය තුළ මෙවැනි ප්‍රශ්න සඳහා ස්ථානයක් තිබිය යුතුය. යමෙකු මේ වගේ හොඳ ප්‍රශ්නයක් ඇසූ විට එය නීති රීති අනුගමනය නොකිරීම නිසා එය වසා දමයි. එය දිගටම සිදුවන්නේ නම්, එය කෙසේ හෝ මෙවැනි ප්‍රශ්න වලට සහාය දැක්වීමේ අවශ්‍යතාවය සං signal ා කළ යුතුය. ක්‍රමලේඛන ආකාරයේ ප්‍රශ්න සමඟ ඒවා ඉතා සමීපව සම්බන්ධ වී ඇති නිසා මේවා පිටාර ගැලීමේ වෙබ් අඩවිය තුළ ක්‍රියාත්මක කිරීමට සිදුවනු ඇත. පිටාර ගැලීම, මට නම්, “වෛෂයිකව පිළිතුරු දිය හැකි ප්‍රශ්න” සඳහා නොවේ (ඉතා නිශ්චිත), එය “ක්‍රමලේඛන ප්‍රශ්න” වේ.
නික් රෙස්

ImWim අපි කෙටි මාතෘකාවක් සමඟ ඒකාබද්ධව ජිරා නිකුත් කිරීමේ යතුරු භාවිතා කරමු, උදාහරණයක් ලෙස:KEY-1234/allow-users-to-do-smart-stuff
RobAu

Answers:


953

මෙන්න මම භාවිතා කරන ශාඛා නම් කිරීමේ සම්මුතීන් සහ ඒවාට හේතු

ශාඛා නම් කිරීමේ සම්මුතීන්

  1. ඔබේ ශාඛා නාම ආරම්භයේදී කණ්ඩායම් ටෝකන (වචන) භාවිතා කරන්න.
  2. ඔබේ කාර්ය ප්‍රවාහයට අර්ථවත් වන අතු වෙන්කර දැක්වීමට කෙටි ඊයම් ටෝකන නිර්වචනය කර භාවිතා කරන්න.
  3. ඔබේ ශාඛා නාමවල කොටස් වෙන් කිරීමට කප්පාදුව භාවිතා කරන්න.
  4. ප්‍රමුඛ කොටස් ලෙස හිස් අංක භාවිතා නොකරන්න.
  5. දිගුකාලීන ශාඛා සඳහා දිගු විස්තරාත්මක නම් වලින් වළකින්න.

කණ්ඩායම් ටෝකන

ඔබේ ශාඛා නාම ඉදිරිපිට "කණ්ඩායම්" ටෝකන භාවිතා කරන්න.

group1/foo
group2/foo
group1/bar
group2/bar
group3/bar
group1/baz

ඔබගේ කාර්ය ප්‍රවාහයට ගැලපීමට ඔබ කැමති ඕනෑම දෙයක් කණ්ඩායම් නම් කළ හැකිය. මගේ සඳහා කෙටි නාම පද භාවිතා කිරීමට මම කැමතියි. වැඩි පැහැදිලි කිරීමක් සඳහා කියවන්න.

හොඳින් මනාව නිර්වචනය කළ ටෝකන

කෙටි ටෝකන තෝරන්න එවිට ඔබේ සෑම ශාඛා නාමයකටම වැඩි ශබ්දයක් එකතු නොවේ. මම මේවා භාවිතා කරමි:

wip       Works in progress; stuff I know won't be finished soon
feat      Feature I'm adding or expanding
bug       Bug fix or experiment
junk      Throwaway branch created to experiment

මෙම සෑම ටෝකනයක්ම එක් එක් ශාඛාවට අයත් ඔබගේ කාර්ය ප්‍රවාහයේ කුමන කොටසටද යන්න ඔබට පැවසිය හැකිය.

වෙනසක විවිධ චක්‍ර සඳහා ඔබට බහු ශාඛා ඇති බව පෙනේ. ඔබගේ චක්‍ර මොනවාදැයි මම නොදනිමි, නමුත් ඒවා 'නව', 'පරීක්ෂණ' සහ 'සත්‍යාපිත' යැයි උපකල්පනය කරමු. මෙම ටැග් වල සංක්ෂිප්ත අනුවාදයන් සමඟ ඔබේ ශාඛා නම් කළ හැකිය, සෑම විටම එකම ආකාරයකින් අක්ෂර වින්‍යාසය, ඒවා දෙකම කණ්ඩායම් කිරීමට සහ ඔබ සිටින්නේ කුමන අවධියේදැයි ඔබට මතක් කර දීමට.

new/frabnotz
new/foo
new/bar
test/foo
test/frabnotz
ver/foo

එක් එක් විවිධ අදියර කරා ළඟා වී ඇත්තේ කුමන ශාඛාදැයි ඔබට ඉක්මනින් පැවසිය හැකි අතර, Git හි රටා ගැලපුම් විකල්ප භාවිතා කර ඔබට ඒවා පහසුවෙන් කාණ්ඩගත කළ හැකිය.

$ git branch --list "test/*"
test/foo
test/frabnotz

$ git branch --list "*/foo"
new/foo
test/foo
ver/foo

$ gitk --branches="*/foo"

කොටස් වෙන් කිරීම සඳහා කප්පාදුව භාවිතා කරන්න

ශාඛා නාම වලින් ඔබ කැමති ඕනෑම පරිසීමකය භාවිතා කළ හැකිය, නමුත් කප්පාදුව වඩාත් නම්‍යශීලී බව මට පෙනේ. ඔබ ඉරක් හෝ තිත් භාවිතා කිරීමට කැමති විය හැකිය. නමුත් කප්පාදුව මඟින් දුරස්ථව සිට / තල්ලු කිරීමේදී හෝ ලබා ගැනීමේදී ශාඛා නැවත නම් කිරීමක් කිරීමට ඔබට ඉඩ සලසයි.

$ git push origin 'refs/heads/feature/*:refs/heads/phord/feat/*'
$ git push origin 'refs/heads/bug/*:refs/heads/review/bugfix/*'

මට, කප්පාදුව මගේ කවචයේ ටැබ් පුළුල් කිරීම (විධාන සම්පූර්ණ කිරීම) සඳහා වඩා හොඳින් ක්‍රියා කරයි. මා එය වින්‍යාස කර ඇති ආකාරය අනුව කොටසෙහි පළමු අක්ෂර ටයිප් කර TAB යතුර එබීමෙන් විවිධ උප කොටස් සහිත ශාඛා සෙවිය හැකිය. Zsh පසුව මා ටයිප් කළ ටෝකනයේ කොටස හා ගැලපෙන අතු ලැයිස්තුවක් ලබා දෙයි. මෙය පෙර ටෝකන සඳහා මෙන්ම කාවැද්දූ ඒවා සඳහාද ක්‍රියා කරයි.

$ git checkout new<TAB>
Menu:  new/frabnotz   new/foo   new/bar


$ git checkout foo<TAB>
Menu:  new/foo   test/foo   ver/foo

(විධාන සම්පූර්ණ කිරීම සම්බන්ධයෙන් ෂෙල් ඉතා වින්‍යාසගත කළ හැකි අතර, ඉරක්, අවධාරනය හෝ තිත් එකම ආකාරයකින් හැසිරවීමට මට එය වින්‍යාසගත කළ හැකිය. නමුත් මම තෝරා නොගත්තෙමි.)

බොහෝ git විධානයන්හි ශාඛා සෙවීමටද එය ඔබට ඉඩ දෙයි:

git branch --list "feature/*"
git log --graph --oneline --decorate --branches="feature/*" 
gitk --branches="feature/*" 

Caveat: අදහස් දැක්වීමේදී ස්ලිප් පෙන්වා දෙන පරිදි, කප්පාදුව ගැටළු ඇති කළ හැකිය. ශාඛා මාර්ග ලෙස ක්‍රියාත්මක වන බැවින්, ඔබට "foo" නමින් ශාඛාවක් සහ "foo / bar" නමින් තවත් ශාඛාවක් තිබිය නොහැක. මෙය නව පරිශීලකයින් සඳහා ව්‍යාකූල විය හැකිය.

හිස් අංක භාවිතා නොකරන්න

ඔබේ ශාඛා නම් කිරීමේ යෝජනා ක්‍රමයේ කොටසක් ලෙස හිස් අංක (හෝ හෙක්ස් අංක) භාවිතා නොකරන්න. විමර්ශන නාමයක පටිත්ත පුළුල් කිරීමේදී, ශාඛා නාමයක් වෙනුවට අංකයක් ෂා -1 හි කොටසක් බව git විසින් තීරණය කළ හැකිය. උදාහරණයක් ලෙස, මගේ නිකුතුව ට්රැකර් දශම සංඛ්‍යා සහිත දෝෂ නම් කරයි. ව්යාකූලත්වය වළක්වා ගැනීම සඳහා මම මගේ සම්බන්ධ ශාඛා CRnnnnn ලෙස නම් කරමි.

$ git checkout CR15032<TAB>
Menu:   fix/CR15032    test/CR15032

මම 15032 ක් පමණක් පුළුල් කිරීමට උත්සාහ කළහොත්, මට SHA-1 හෝ ශාඛා නාම සෙවීමට අවශ්‍ය දැයි git සැක සහිත වන අතර මගේ තේරීම් තරමක් සීමිත වනු ඇත.

දිගු විස්තර සහිත නම් වලින් වළකින්න

ඔබ ශාඛා ලැයිස්තුවක් දෙස බලන විට දිගු ශාඛා නම් ඉතා ප්‍රයෝජනවත් වේ. නමුත් සරසන ලද එක් පේළියේ ල logs ු-සටහන් දෙස බැලීමේදී එය මඟට යා හැකි බැවින් ශාඛා නාමයන්ට තනි පේළියේ වැඩි කොටසක් ආහාරයට ගත හැකි අතර ලොගයේ දෘශ්‍යමාන කොටස කෙටියෙන් දැක්විය හැකිය.

අනෙක් අතට, ඔබ අතින් පුරුද්දක් ලෙස නැවත ලිවීම නොකළහොත් දිගු ශාඛා නාම “ඒකාබද්ධ කිරීමේ කොමිස්” සඳහා වඩාත් උපකාරී වේ. පෙරනිමි ඒකාබද්ධ කිරීමේ පණිවිඩය වේ Merge branch 'branch-name'. ඒකාබද්ධ කිරීමේ පණිවිඩ Merge branch 'fix/CR15032/crash-when-unformatted-disk-inserted'නිකම්ම වෙනුවට පෙන්වීම ඔබට වඩාත් ප්‍රයෝජනවත් විය හැකිය Merge branch 'fix/CR15032'.


161
වැනි ආකෘති මිශ්ර භාවිතා දුබලකමක් bug/20574/frabnotz-finderසහ bug/20424ඔබට උප-සංකේත නොමැතිව ආරම්භ වරක්, ඔබ එක් පසුව එකතු කළ නොහැක සහ අනෙක් අතට බව ය. උදා: ඔබ bug/20424ශාඛාවක් නිර්මාණය කරන්නේ නම් , ඔබට bug/20424/additional-fixingපසුව ශාඛාවක් සෑදිය නොහැක (ඔබ bug/20424ශාඛාව මකා දැමුවේ නැත්නම් ) ඒ හා සමානව, bug/20574/frabnotz-finderදැනටමත් ශාඛාවක් නම්, ඔබට ශාඛාවක් සෑදිය නොහැක bug/20574. මම (උදා bug/20574_frabnotz-finder) මෙවැනි අවස්ථාවන්හිදී උප-ටෝකන නොවන පරිසීමකයක් භාවිතා කිරීමට නැඹුරු වෙමි , නැතහොත් උප ටෝකනය සඳහා පෙරනිමි නමක් තෝරා ගන්න (උදා bug/20424/main).
ස්ලිප් ඩී. තොම්සන්

5
නාමාවලි ලැයිස්තු දර්ශනයක් වැනි ටෝකන බෙදීම් කඩා වැටීමට ඉඩ දීම සඳහා සමහර Git GUI මත පදනම් වූ මෙවලම් විමසීමේ වාසිය ද එයට ඇත. ඉහත නිදසුනේ, ඔබ බලන්න කැමතියි featureකණ්ඩායම් සහ bugකණ්ඩායම්, පෙන්වන්න දක්වා ප්රසාරණය foo, barහිටපු සහ සඳහා ටැග් 20574, 20592කණ්ඩායම් සහ 20424, 21334මෙම දෙවැන්න සඳහා ටැග්.
ස්ලිප් ඩී. තොම්සන්

48
මම කිසි විටෙකත් git ශාඛා නම් කිරීමේදී කප්පාදු භාවිතා නොකරන ව්‍යාපාරයක් ආරම්භ කරන්නෙමි. මෙයට හේතුව, උදාහරණයක් ලෙස සීඅයිඅයි එකක, ඇසුරුම් කේතය ඇසුරුම් කිරීමේදී ඔබට ශාඛා නාමය සඳහන් කිරීමට අවශ්‍ය නම්, යූරි හෝ පැත් (උදාහරණයක් ලෙස) ගොඩනඟන විට ශාඛාවේ නම සඳහන් කිරීමට ඔබට අවශ්‍යය. බෑෂ් පිටපතක යූරි; යූආර්එල් කොටසක් එකතු කිරීම නිසා කප්පාදුව නිසා ඔබට යූරි තැනීමට අපහසු වනු ඇත. ඔව්, කප්පාදුව ප්‍රතිස්ථාපනය කළ හැකි නමුත් එය නිරාකරණය කිරීමට මට බොහෝ කාලයක් ගතවනු ඇත.
ඇඩම් ස්පෙන්ස්

13
ඉදිරි කප්පාදුව සමහර අවස්ථාවලදී git සඳහා අර්ථයක් තිබීම ගැටලුවක්ද? උදා: ප්රතිචාර git branch -a, සහ ලබා remotes/origin/masterආදිය, මම ශාඛා ගැන මට කියන්න, මම ඉදිරි ඇළ සළකුණ භාවිතා නොකළ මම එක දකින විට, ඒ මම ඒ "විශේෂ" සඳහන් වේ දන්නේ GIT දකින විට.
ඩොග්වෙදර්

11
කරුණාකර ඔබට foo සහ bar වෙනුවට උදාහරණ කිහිපයක් භාවිතා කළ හැකිද?
වටින 7

330

වින්සන්ට් ඩ්‍රයිසන් විසින් සාර්ථක Git ශාඛා ආකෘතියක් සඳහා හොඳ යෝජනා තිබේ. පින්තූරයක් පහතින්. මෙම ශාඛා ආකෘතිය ඔබට ආයාචනා කරන්නේ නම්, ප්‍රවාහයේ දිගුව git වෙත සලකා බලන්න . තවත් සමහරු ප්‍රවාහය ගැන අදහස් දක්වා ඇත

ඩ්‍රයිසන්ගේ ආකෘතියට ඇතුළත් වේ

  • ප්‍රධාන ශාඛාවක්, මුදා හැරීම සඳහා පමණක් භාවිතා කරයි. සාමාන්‍ය නම master.

  • එම ශාඛාවෙන් ඉවතට “සංවර්ධනය” කරන ශාඛාවක්. බොහෝ ප්‍රධාන පෙළේ වැඩ සඳහා භාවිතා කරන්නේ එයයි. පොදුවේ නම් කර developඇත.

  • සංවර්ධිත ශාඛාවෙන් පිටත විශේෂාංග ශාඛා කිහිපයක්. විශේෂාංගයේ නම මත පදනම් වූ නම. මේවා නැවත ඒකාබද්ධ කිරීම සඳහා මිස ස්වාමියා හෝ ශාඛා මුදා හැරීම නොවේ.

  • දෝෂ නිවැරදි කිරීම් සහ නව විශේෂාංග නොමැතිව අපේක්ෂක නිකුතු පැවැත්වීම සඳහා ශාඛාව මුදා හරින්න. සාමාන්‍ය නම rc1.1.

හොට්ෆික්ස් යනු ස්වාමියාගෙන් සිදුවන වෙනස්කම් සඳහා කෙටිකාලීන ශාඛා වන අතර සංවර්ධන ශාඛාව සම්බන්ධ නොවී මාස්ටර් බවට පත්වේ.

රූප විස්තරය මෙහි ඇතුළත් කරන්න


134
එය විශේෂාංග ශාඛා සඳහා නම් කිරීමේ සම්මුතීන් සමූහයක් පරිශීලකයාට භාර දී ඇති හෙයින් (ඒවා “ස්වාමියා, සංවර්ධනය, මුදා හැරීම හෝ හොට්ෆික්ස් හැර ” විය හැකිය
බ්‍රයන්

1
Rian බ්‍රයන් විසින් ආදර්ශය විසඳන ගැටළු වල සන්දර්භය තුළ විශේෂාංග නම් කිරීමේ සම්මුතිය උපකාරවත් වන්නේ කුමක් ද? විශේෂාංගවල තවදුරටත් වෙනසක් කිරීම සැබවින්ම උපකාරී වන්නේ කෙසේදැයි මම නොදනිමි. සමහර විට අනාගතයට එදිරිව ඊළඟ නිකුතුව, නමුත් එය සාකච්ඡා කළ හැකි අතර ඒ නිසා නමේ කොටසක් නොවිය යුතුය. කියවීමේ හැකියාව සඳහා, සමහර විට ඒවා විශේෂාංගය * සමඟ සූදානම් කිරීම පමණක් ප්‍රමාණවත් වේ. ඔබ කිහිප වතාවක්ම ඡන්දය ප්‍රකාශ කළ නිසා ඔබේ සිතුවිලි ක්‍රියාවලිය ඇසීමට මට කුතුහලයක් ඇත ...
නික් රෙස්

2
හොඳ තොරතුරු වුවද මෙම පිළිතුර සම්මුතිය නම් කරනවාට වඩා ප්‍රවාහය පිළිබඳ ප්‍රශ්නයට ආමන්ත්‍රණය කරයි. සත්‍ය වචන භාවිතා කළ යුතු වචන (නාම පද එදිරිව ක්‍රියා පද), පරිසීමක, නඩුව යනාදිය දැන ගැනීමට OP කැමති යැයි මම සිතමි
කැල්ටර්

7
අඛණ්ඩ බෙදාහැරීම (පි. 36) නම් පොත තර්ක කරන්නේ මෙම ආකෘතිය අඛණ්ඩ ඒකාබද්ධතාවයට ප්‍රතිවිරෝධී බවයි, ... මූලික වශයෙන් එය සැබවින්ම "වේගවත්" නොවේ.
මාකන්

මෙය ඇත්ත වශයෙන්ම ඇසූ ප්‍රශ්නයට පිළිතුරු සපයන්නේ නැත. මෙමඟින් විශේෂිත වැඩ කාර්ය ප්‍රවාහයක් පුළුල් සංවර්ධනයක් සහ මුදා හැරීමේ කාලසටහනකට ඒකාබද්ධ කිරීම පිළිබඳ අවබෝධයක් ලබා දෙයි , කෙසේ වෙතත්, ඇත්ත වශයෙන්ම ශාඛා ලෙස හැඳින්විය යුතු දේ පිළිබඳ සම්මුතීන් පිළිබඳ උපදෙස් සොයයි.
රෝද රථය

56

මගේ පුද්ගලික මනාපය වන්නේ මම මාතෘකා ශාඛාවක් සමඟ කටයුතු කිරීමෙන් පසු ශාඛා නාමය මකා දැමීමයි.

ශාඛාවේ අරුත පැහැදිලි කිරීම සඳහා ශාඛා නාමය භාවිතා කිරීමට උත්සාහ කරනවා වෙනුවට, මම එම ශාඛාවේ පළමු කැපවීමේදී “ශාඛාව:” සමඟ බැඳීම් පණිවිඩයේ විෂය රේඛාව ආරම්භ කරමි. මට ප්‍රමාණවත් ඉඩක් ලබා නොදේ.

මගේ භාවිතයේ ඇති ශාඛා නාමය තනිකරම ශාඛාවක් වෙත යොමු කිරීමේදී එය හසුරුවන්නකි. මාතෘකා ශාඛාවේ වැඩ අවසන් වූ පසු, මම ශාඛා නාමයෙන් ඉවත් වෙමි, සමහර විට පසුකාලීන යොමු කිරීම සඳහා වූ කැපවීම ටැග් කරමි.

එමඟින් ප්‍රතිදානය git branchවඩාත් ප්‍රයෝජනවත් වේ: එය ලැයිස්තුගත කරන්නේ දිගු කාලීන ශාඛා සහ ක්‍රියාකාරී මාතෘකා ශාඛා පමණි.


54

මා දැක ඇති සහ මා භාවිතා කරන මෙවලම් මත පදනම් වූ විවිධ යෝජනා ක්‍රම වලින් මම මිශ්‍ර වී ගැලපේ.
එබැවින් මගේ සම්පූර්ණ කරන ලද ශාඛා නම වනුයේ:

නම / විශේෂාංගය / නිකුතුව-ට්රැකර් අංකය / කෙටි විස්තරය

එය පරිවර්තනය කරන්නේ:

mike / blogs / RSSI-12 / logo-fix

කොටස් පහසුවෙන් ඉදිරියට සංවිධානය කිරීම සඳහා SourceTree හි ෆෝල්ඩර ලෙස අර්ථකථනය වන හෙයින් ඉදිරි කප්පාදුවලින් කොටස් වෙන් කරනු ලැබේ. අපගේ ගැටළු සොයා ගැනීම සඳහා අපි ජිරා භාවිතා කරන අතර එමඟින් අංකය ඇතුළුව පද්ධතිය තුළ බැලීම පහසු කරයි. අදින්න ඉල්ලීමක් ඉදිරිපත් කිරීමට උත්සාහ කරන විට එම අංකය ගිතූබ් තුළ සොයා ගැනීමට උත්සාහ කරන විට එය සෙවිය හැකිය.


කැපවීමේ පණිවිඩයේ දෝෂ / විශේෂාංග අංකය හැර (GitHub -> Pivotal Tracker Integration සඳහා) මමත් එසේමය.
ලියෝ

RSSI යන්නෙන් අදහස් කරන්නේ කුමක්දැයි මම කල්පනා කරමි.
රෙන්ෂුකි

@renshuki එය සාමාන්‍ය ජිරා ව්‍යාපෘති යතුරක් පමණි. ඔබ කුමන ගැටළු ට්රැකර් භාවිතා කළත්, ටිකට් හැඳුනුම්පත ඇතුල් කරන්න
මයික් ජී

Ike මයික් නිරවද්‍යතාවයට ස්තූතියි!
රෙන්ෂුකි

3
විස්තරය සමඟ නිකුත් කිරීමේ අංකය සම්මත කිරීම හැර මම එයම භාවිතා කරමි:name/feature/issue-tracker-number-short-description
lephleg

22

සෑම කාර්යයක් සඳහාම ශාඛා තුනක් / ඒකාබද්ධ කිරීමක් අවශ්‍ය වන්නේ ඇයි? ඔබට ඒ ගැන වැඩි විස්තර කළ හැකිද?

ඔබ දෝෂ ලුහුබැඳීමේ පද්ධතියක් භාවිතා කරන්නේ නම්, ශාඛා නාමයේ කොටසක් ලෙස ඔබට දෝෂ අංකය භාවිතා කළ හැකිය. මෙමඟින් ශාඛා නාම අද්විතීය වන අතර, ඒවා කෙටි හා විස්තරාත්මක වචනයක් හෝ දෙකකින් උපසර්ගගත කළ හැකිය "ResizeWindow-43523". ඔබට සම්බන්ධිත දෝෂය සොයා ගත හැකි බැවින්, ශාඛා පිරිසිදු කිරීමට යන විට එය පහසු කිරීමට ද එය උපකාරී වේ. මම සාමාන්‍යයෙන් මගේ අතු නම් කරන්නේ මේ ආකාරයටයි.

මෙම ශාඛා අවසානයේදී නැවත ස්වාමියා සමඟ ඒකාබද්ධ වන බැවින්, ඔබ ඒකාබද්ධ වූ පසු ඒවා ආරක්ෂිතව මකා දැමිය යුතුය. ඔබ ඒකාබද්ධ --squashනොවන්නේ නම්, ඔබට එය අවශ්‍ය වූ විට ශාඛාවේ සමස්ත ඉතිහාසයම පවතිනු ඇත.


12

සටහන, දැන් Git 2.0 හි කොටසක් වන e703d7 හෝ commit b6c2a0d (2014 මාර්තු) හි දක්වා ඇති පරිදි, ඔබට තවත් නම් කිරීමේ සම්මුතියක් හමුවනු ඇත (ඔබට ශාඛා සඳහා අයදුම් කළ හැකිය).

"ඔබට අවකාශය භාවිතා කිරීමට අවශ්‍ය වූ විට, ඉරක් භාවිතා කරන්න" යනු ඔබ අවකාශයක් භාවිතා නොකළ යුතු යැයි පැවසීම අමුතු ක්‍රමයකි.
විධාන රේඛා විස්තර සඳහා ඉරුණු-බහු වචන භාවිතා කිරීම වඩාත් සුලභ බැවින්, මෙම ස්ථානවල අවකාශයන් භාවිතා කිරීමට පවා ඔබට අවශ්‍ය නැත.

ශාඛා නාමයකට ඉඩක් තිබිය නොහැක (" ශාඛා නාමයක් තුළ කුමන අක්ෂර නීති විරෝධීද? " සහ git check-ref-formatමිනිසා පිටුව බලන්න ).

එබැවින් බහු වචන ප්‍රකාශනයකින් නිරූපණය වන සෑම ශාඛා නාමයක් සඳහාම, ' -' (ඉරක්) බෙදුම්කරුවෙකු ලෙස භාවිතා කිරීම හොඳ අදහසකි.


7

ෆාර්ක්ට්‍රොනික්ස්ගේ යෝජනාවට අනුව, අපි රසදිය සඳහා සමාන සඳහා ජිරා ටිකට් අංක භාවිතා කර ඇති අතර, ඒවා දිගටම git ශාඛා සඳහා භාවිතා කිරීමට මම සැලසුම් කරමි. නමුත් මම හිතන්නේ ටිකට් අංකයම ප්‍රමාණවත් තරම් අද්විතීයයි. ෆාර්ක්ට්‍රොනික්ස් සඳහන් කළ පරිදි ශාඛා නාමයේ විස්තරාත්මක වචනයක් තිබීම ප්‍රයෝජනවත් විය හැකි අතර, ඔබ බොහෝ විට අතු අතර මාරුවන්නේ නම්, ඔබට ටයිප් කිරීමට අඩුවෙන් අවශ්‍ය වේ. ඔබට ශාඛා නම දැන ගැනීමට අවශ්‍ය නම්, ඔබ එය නොදන්නේ නම් ටිකට් පතේ ඇති අදාළ පද සඳහා ජිරා දෙස බලන්න. ඊට අමතරව, ඔබ එක් එක් අදහස් දැක්වීමේදී ටිකට් අංකය ඇතුළත් කළ යුතුය.

ඔබේ ශාඛාව අනුවාදයක් නියෝජනය කරන්නේ නම්, පොදු සම්මුතිය වන්නේ ශාඛා නම් සඳහා xxx (උදාහරණ: "1.0.0") ආකෘතිය සහ ටැග් නම් සඳහා vx.xx (උදාහරණ "v1.0.0") භාවිතා කිරීමයි (ගැටුම් මඟහරවා ගැනීම සඳහා) . මෙයද බලන්න: git-tags සඳහා සම්මත-නම් කිරීම-සම්මුතියක් තිබේද?


1
ගැටුම් පිළිබඳ ගැටලුවක් තිබේද? v1.2.4ශාඛාවක් අවසානයේ v1.2.4ටැගයක් සහිත අන්ත ලක්ෂ්‍යයක් කරා ගෙන යාමේ අභිප්‍රාය නම් (ඔබ අනුවාදයකට පසුව ශාඛා හා ටැග් යන දෙකම නම් කරන තත්වය මෙය යැයි උපකල්පනය කිරීම නිවැරදිද) , එසේ නම් එය වැදගත්ද? ටැගය තවමත් ළඟා විය හැකි refs/tags/v1.2.4අතර ශාඛාව පිහිටා ඇති අතර refs/heads/v1.2.4, එය නොපැහැදිලි විට (අනතුරු ඇඟවීමක් සහිතව) ටැග් නාමයට Git කැමති වනු ඇති බව පෙනේ.
ස්ලිප් ඩී. තොම්සන්

1
අනුවාද උදාහරණය සඳහා, මගේ පිළිතුරේ සඳහන් කළ පරිදි, යෝජිත පරිචයක් වන්නේ අතු නොව ටැග් නම් සඳහා "v" සමඟ උපසර්ගය යෙදීමයි. වැරදි සන්නිවේදනයෙන් වැළකී සිටීමට ඔබට හැකි නම් අපැහැදිලි භාවයෙන් වළකින්න. තවද එය ඊළඟ නවතම හා විශාලතම VCS කුමක් වුවත් සංක්‍රමණය වීමේ මාර්ගයේ ගැටළු ඇති කළ හැකි බැවිනි.
ගැරී එස්. වීවර්

2
මම මෑතකදී රෙපෝ එකක් සමඟ වැඩ කළ අතර එහිදී අපි එක් එක් අනුවාද ශාඛාව එකම නමින් ටැගයකින් කපා දැමුවෙමු. එය සැලකිය යුතු ලෙස හොඳින් ක්‍රියාත්මක වූයේ කිසිදු අවිනිශ්චිතතාවයක් නොමැති නිසාය (ටැගය බොහෝ අවස්ථාවන්හි අනුරූප ශාඛාවේ අවසාන කැපවීම වෙත යොමු කරයි), සහ ඇති විට, Git “නිවැරදි දේ කරයි” (අනතුරු ඇඟවීමක් සහිතව). මම එයට කැමතියි යමෙකු අස්ථි හිසක් වැරැද්දක් කර තව දුරටත් කැපූ ශාඛාවකට ගියහොත්, Git ටැගය දිගටම තෝරා ගනු ඇත, එය අභිප්‍රායයි. පද්ධතියේ සෑම දෙයක්ම පාලනය කර ඇති විට අවිනිශ්චිතතාවයෙන් දේවල් සරල කළ හැකි අතර අභිප්‍රාය පැහැදිලි වේ.
ස්ලිප් ඩී. තොම්සන්
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.