හැමෝම Git කේන්ද්‍රීය ආකාරයකින් භාවිතා කරන්නේ ඇයි?


294

අනුවාද පාලනය සඳහා මම මගේ පසුගිය සමාගම් දෙකෙහි Git භාවිතා කර ඇත. සමාගම් වලින් 90% ක් පමණ වෙනත් අනුවාද පාලන පද්ධතිවලට වඩා Git භාවිතා කරන බව මා අසා ඇති දෙයින් පෙනේ.

Git හි විශාලතම විකුණුම් ලක්ෂ්‍යයන්ගෙන් එකක් වන්නේ එය විමධ්‍යගත කිරීමයි, එනම් සියලු ගබඩාවන් සමාන වේ; සත්‍යයේ කේන්ද්‍රීය ගබඩාවක් / ප්‍රභවයක් නොමැත. මෙය ලිනස් ටොවල්ඩ්ස් විසින් දිනා ගන්නා ලක්ෂණයකි .

නමුත් සෑම සමාගමක්ම SVN හෝ CVS භාවිතා කරන ආකාරයටම සෑම සමාගමක්ම Git මධ්‍යගතව භාවිතා කළ බව පෙනේ. සෑම විටම සේවාදායකයක (සාමාන්‍යයෙන් GitHub හි) කේන්ද්‍රීය ගබඩාවක් ඇත, එය මිනිසුන් ඇදගෙන තල්ලු කරයි. (මගේ පිළිගත් සීමිත අත්දැකීම් අනුව) මිනිසුන් සැබවින්ම විමධ්‍යගත ආකාරයෙන් Git භාවිතා කරන ආකාරය මා දැක නැත, අසා නැත.

මගේ ප්‍රශ්න:

  1. ප්‍රායෝගිකව මිනිසුන් Git සඳහා බෙදා හරින ලද කාර්ය ප්‍රවාහයක් භාවිතා නොකරන්නේ ඇයි?
  2. බෙදා හරින ලද ආකාරයකින් වැඩ කිරීමේ හැකියාව නවීන අනුවාද පාලනයට පවා වැදගත් ද? නැතහොත් එය හොඳ යැයි පෙනේ ද?

සංස්කරණය කරන්න

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


31
මට හරියටම දැනෙන්නේ එලෙසම වන අතර මෙය තේරුම් නොගනී.
ස්නූප්

57
පුද්ගලිකව, ප්‍රධාන දුරස්ථයට PR නිර්මාණය කිරීම සඳහා දෙබලක හැරුණු විට, බහු දුරස්ථ සඳහා භාවිතා කිරීමේ අවස්ථා ගැන මම නොදනිමි. බෙදා හරින ලද දේ තවමත් ප්‍රයෝජනවත් වන්නේ එයින් අදහස් වන්නේ ජාලය සමඟ කතා නොකර මගේ යන්ත්‍රයේ සම්පූර්ණ ඉතිහාසයක් ලබා ගන්නා බවත්, මට ඇත්තටම අවශ්‍ය නම් මට නොබැඳි වැඩක් කළ හැකි බවත්, එක් මාර්ගගත රෙපෝ සත්කාරක සමාගමකින් සංක්‍රමණය වීම වඩා පහසු බවත්ය. වෙනත්. ඔබ "බෙදා හරින ලද කාර්ය ප්‍රවාහයක්" ගැන සඳහන් කරන විට ඔබේ මනසේ ඇත්තේ කුමක්ද?
Ixrec

44
ආරම්භයේ සිටම එක් "සත්‍ය ප්‍රභවයක්" ලිනක්ස් කර්නල් ගබඩාවක් තිබීම අපේක්ෂා කරන බව මට තරයේ විශ්වාසයි.
ගෝර්ට් ද රොබෝ

68
අවසානයේ, මෘදුකාංග ම ඇත කේන්ද්රකර. ගනුදෙනුකරුවන් ශාඛා හෝ දුරස්ථ උපකරණ මිලට නොගනිති, ඔවුන් අවසාන, එකට, සාදන ලද නිෂ්පාදනයක් මිලට ගනී. සෑම විටම ඉදිරියට යම් කේන්ද්‍රීය මාවතක් තිබිය යුතුය.
බ්‍රැන්ඩන්

37
මට නම් git හි “විමධ්‍යගත-නෙස්” එය නිර්දේශ කරන අවම වැදගත් අංගයකි. වෙනත් කිසිවෙකුට බලපෑමක් නොකර, දේශීයව නිතර නිතර සිදුකිරීමේ හැකියාව සහ නැවත සකස් කිරීම හෝ නැවත සකස් කිරීම වැනි ප්‍රබල ශිල්පීය ක්‍රම මගේ වැඩ ප්‍රවාහයේ ඇත්ත වශයෙන්ම බැබළෙයි. මේ සියල්ල විමධ්‍යගත කිරීමෙන් කළ හැකි ය (ඇත්ත වශයෙන්ම සම්භාවිතාව), නමුත් DVCS හි “D” එය මට පමණක් වැදගත් නොවේ.
ජේ

Answers:


260

Ahh, නමුත් ඇත්ත ඔබ ඇත GIT විමධ්යගත ආකාරයෙන් භාවිතා!

Git හි පූර්වගාමියාගේ මනස හුවමාරුව සංසන්දනය කරමු, svn. යටපත් කිරීමේ සත්‍යයේ එක් ප්‍රභවයක් වූයේ එක් “රෙපෝ” එකක් පමණි. ඔබ කැපවීමක් කළ විට, එය අනෙක් සෑම සංවර්ධකයෙක්ම කැපවූ තනි කේන්ද්‍රීය නිධියකට විය.

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

එවිට අසාර්ථක වීමේ සමස්ත ලක්ෂ්‍යය සහ සහායක ගැටළු ගෙන එයි. ඔබේ මධ්‍යම svn repo කෙසේ හෝ මිය ගියහොත්, එය උපස්ථයෙන් යථා තත්වයට පත් වන තෙක් ඔබ සියල්ලන්ම ඉස්කුරුප්පු කර ඇති අතර, උපස්ථ කිසිවක් නොතිබුනේ නම්, ඔබ සියල්ලන්ම දෙගුණයක් ඉස්කුරුප්පු කර ඇත. නමුත් "මධ්‍යම" git repo මිය ගියහොත්, ඔබට උපස්ථයෙන් හෝ CI සේවාදායකයේ ඇති සංවර්ධකයින්ගේ වැඩපොළවල් වලින් ලබා ගත හැකිය. ඒවා බෙදා හැර ඇති නිසා ඔබට මෙය කළ හැකිය. සෑම සංවර්ධකයෙකුටම repo හි පළමු පන්තියේ පිටපතක් ඇත.

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

වෙනත් සංවර්ධකයින් වෙත කෙලින්ම තල්ලු කරනවා වෙනුවට , ඔබ වෙනත් දුරස්ථ ගබඩාවක් හරහා වක්‍රව වෙනස්කම් සිදු කරයි යන කාරණය එතරම් වැදගත් නොවේ. අපගේ දෘෂ්ටිකෝණයෙන් වැදගත් කොටස නම්, ඔබේ දේශීය පිටපත් කිරීමේ පිටපත එහි ම රිපෝ එකක් වීමයි. Svn හි සත්‍යයේ කේන්ද්‍රීය ප්‍රභවය ක්‍රියාත්මක වන්නේ පද්ධතියේ සැලසුම මගිනි. Git වලදී, පද්ධතියට මෙම සංකල්පය පවා නොමැත; සත්‍යයේ ප්‍රභවයක් තිබේ නම් එය බාහිරව තීරණය වේ.


15
SVN ඒකාබද්ධ කිරීම ද බලපාන්නේ ගැටුම්කාරී වෙනස්කම් වලට සම්බන්ධ සංවර්ධකයින්ට පමණි. එක් කැපවීමකින් එය රෙපෝවට ඇතුළත් වේ, ගැටුම් නිරාකරණය වන තෙක් කිසිදු ගැටුම් ඒකාබද්ධ කිරීමකට රෙපෝවට යා නොහැක (ඔබට වෙනම ශාඛාවකට / මාර්ගයකට සමාන්තරව කැපවිය හැකිය, නමුත් ඇත්ත වශයෙන්ම එය දැන් ගැටුමක් නොවේද?)
බෙන් වොයිගට්

30
කේන්ද්‍රීය සේවාදායකයක් පවතින විට, ජාලය අක්‍රියව තිබියදී GIT අඛණ්ඩව දේශීය අනුවාදකරණයට ඉඩ දෙන අතර SVN එසේ නොකරයි (වෙනත් සමහර අනුවාද පාලන පද්ධති ඊටත් වඩා නරක ය, ජාලයට ළඟා විය නොහැකි විට සියලු වැඩ නතර කරන්න. , ඔබ ගොනුවක් පරික්ෂා කරන තෙක් එය වෙනස් කිරීමට ඔවුන් ඔබට ඉඩ නොදෙන නිසා).
බෙන් වොයිගට්

17
En බෙන් වොයිට් ඔහ්, එය වැඩ නතර කිරීම හරි. ඔබට svn upපිරික්සීමට පෙර ඔබ රෙපෝ සමඟ යාවත්කාලීනව සිටිය යුතු බව මතක තබා ගන්න. ඔබ ඒකාබද්ධ කිරීමේ ගැටුම් නිරාකරණය කිරීමට උත්සාහ කරන අතරතුර අනෙක් අය දිගටම පරීක්ෂා කරන විට සහ තවත් ඒකාබද්ධ කිරීමේ ගැටුම් මාලාවක් ඔබට ලබා දෙයි ... එක්කෝ ඔබ එය නවතා දමයි නැතහොත් ඔබේ සිහිබුද්ධියෙන් ඉතිරිව ඇති දේ ඔබට අහිමි වේ.
මයිකල් හැම්ප්ටන්

21
නැත, ඔබගේ කාර්ය ප්‍රවාහයට බාධා නොකර, ඔබ විසින් වෙනස් කරන ලද ශාඛාවට අනිවාර්යයෙන්ම සම්බන්ධ වීමට මිනිසුන්ට හැකිය.
බෙන් වොයිග්ට්

29
බෙන් හරි. SVN repo එකක් නිසියාකාරව කළමනාකරණය කර ඇති අතර මෘදුකාංග සංවර්ධනය කරන්නේ කෙසේද යන්න පිළිබඳව නිසි දැනුමක් ඇති කණ්ඩායමක් විසින් භාවිතා කරනු ලැබේ. ඔබට ඒවා ලැබෙන්නේ යමෙකු යම් වැරැද්දක් කර සේවයෙන් පහ කිරීමට අවශ්‍ය වූ විට පමණි (: P). inb4 ඔබට ඔවුන්ගේ මෙවලම් භාවිතා කරන්නේ කෙසේදැයි ජනතාව දැනුවත් කිරීමට අවශ්‍ය නොවන විට එය පහසු වේ. ඔව්, හොඳයි, එස්වීඑන් ගැන ඇති දේට වඩා Git ගැන ඉගැන්වීමට තවත් බොහෝ දේ ඇත!
කක්ෂයේ සැහැල්ලු ධාවන

117

විට ඔබේ ගොඩනැංවූ සේවාදායකය (ඔබ කරන ප්රධාන පොලිස් පරීක්ෂක භාවිතා, හරිද?) එය අදින්න කරන්නේ කොහේද? වර්ධනීය, නිර්මාණය? නිසැකවම, ඔබට තර්ක කළ හැකි ඒකාබද්ධ ගොඩනැගීමකට “එක් සත්‍ය ප්‍රතිමූර්තියක්” අවශ්‍ය නොවන නමුත් නිසැකවම බෙදාහැරීමේ ගොඩනැඟිල්ලක් (එනම් ඔබ පාරිභෝගිකයාට දෙන දේ) අවශ්‍ය වේ.

වෙනත් වචන වලින් කිවහොත්: ඛණ්ඩනය. ඔබ එක් රෙපෝවක් "" රෙපෝ "ලෙස නම් කර ඉල්ලීම් ඉදිරිපත් කරන භාරකරුවන් පත් කරන්නේ නම්," මට මෘදුකාංගයක් ලබා දෙන්න "හෝ" මම කණ්ඩායමට අලුත් ය, කේතය කොහිද? "යන ඉල්ලීම සපුරාලීමට ඔබට පහසු ක්‍රමයක් තිබේ.

ඩීවීසීඑස් හි ශක්තිය එහි සම වයසේ සිට සම වයසේ අංගයක් නොව එය ධූරාවලිගත කාරණයකි . මම මගේ සේවා ස්ථානය වෙනස් කරමි, පසුව මම දේශීයව කැප වෙමි. මට අංගයක් සම්පුර්ණ වූ පසු, මම මගේ කොමිස් ඒකාබද්ධ කර ඒවා මගේ දුරස්ථයට තල්ලු කරමි. එවිට මම ඕනෑම අයෙකුට මගේ තාවකාලික කේතය දැකිය හැකිය, ප්‍රතිපෝෂණ ලබා දෙන්න. මම ඉල්ලීමක් කිරීමට පෙර සහ ව්‍යාපෘති පරිපාලක විසින් එය එක් සත්‍ය ගබඩාවකට ඒකාබද්ධ කරයි.

සාම්ප්‍රදායික සීවීසීඑස් සමඟ ඔබ එක්කෝ කැපවී හෝ නැත. සමහර වැඩ ප්‍රවාහ සඳහා එය කදිමයි (මම විවිධ ව්‍යාපෘති සඳහා VCS වර්ග දෙකම භාවිතා කරමි), නමුත් පොදු හෝ OSS ව්‍යාපෘතියක් සඳහා එහි මුහුණේ සමතලා වේ. ප්‍රධාන දෙය නම් DVCS සතුව පියවර කිහිපයක් ඇත, ඒවා වැඩිපුර වැඩ කරන නමුත් ආගන්තුකයන්ගෙන් කේත ඒකාබද්ධ කිරීමට වඩා හොඳ ක්‍රමයක් සපයන අතර එය පිරික්සනු ලබන දෙයට වඩා හොඳ දෘශ්‍යතාවයක් ලබා ගත හැකිය. එය මධ්‍යගත ආකාරයකින් භාවිතා කිරීමෙන් අදහස් කරන්නේ ඔබට තවමත් හැකි බවයි ව්යාපෘතියේ වර්තමාන තත්වයේ රන් ප්රමිතිය තිබිය යුතු අතර වඩා හොඳ කේත බෙදාගැනීමේ යාන්ත්රණයක් ද සපයයි.


2
සමස්තයක් වශයෙන් හොඳ පිළිතුරක් ඇත, නමුත් අඛණ්ඩ ඒකාබද්ධතාවයට පෙර Git පුළුල් ලෙස භාවිතයේ පැවති බව මට හොඳටම විශ්වාසයි; අපගේ කණ්ඩායම CI භාවිතා කරයි, කෙසේ වෙතත්, පරීක්ෂා කිරීමට ස්තූතියි: D.
Gardenhead

5
ard ගාඩන්හෙඩ්: ඔබට කාරණය මග හැරුණි: යමෙක් අනුකලනය අතින් ගොඩනඟන්නේ නම් එකම තර්කය දරයි. "CI" යනු Git ට වඩා පැරණි ක්‍රියාවලියක් සඳහා ස්වයංක්‍රීයකරණයකි.
ඩොක් බ්‍රවුන්

25
"ඕනෑම කෙනෙකුට මගේ තාවකාලික කේතය දැකිය හැකිය" - තවද ඔවුන්ට ඔබේ තාවකාලික කේතය අදින්නටත්, එය ඔවුන්ගේ තාවකාලික කේතය සමඟ ඒකාබද්ධ කිරීමටත්, පරීක්ෂණ ක්‍රියාත්මක කිරීමටත් හැකිය. එක් සත්‍ය පිටපතක ශාඛා හා වෙනස්කම් අවශ්‍ය බැවින් මෙය මධ්‍යගත VCSes හි වේදනාවකි. බෙදා හරින ලද, ඔබ අතිරේක දුරස්ථ වින්‍යාස කර, පසුව ඒකාබද්ධ කිරීම, ඇලවීම සහ චෙරි තෝරා ගැනීම ආරම්භ කරන්න. ඔබ කළ දේ පිළිබඳව ඔබ සතුව ඇත, නමුත් ඔබ ඒවා ප්‍රකාශයට පත් කිරීමට තෝරා ගන්නේ නම් මිස ඔබ කුමක් කරන්නේ දැයි වෙන කිසිවෙකුට දැකගත නොහැක. පොදුවේ ගත් කල, විශාල ව්‍යාපෘතියක් සඳහා එස්.වී.එන් භාවිතා කරන තුරු කිසිවෙකු ඩී.වී.සී.එස් අර්ථ විරහිත යැයි ප්‍රකාශ නොකළ යුතු යැයි මම නිර්දේශ කරමි ...
ස්ටීව් ජෙසොප්

9
ලිනක්ස් කර්නලයේ "එක් සත්‍ය ගොඩනැගීමක්" නොමැති නිසා. සෑම කෙනෙකුම එය තනිවම ගොඩනඟා ඇති හෙයින්, ලිනස්ගේ ගබඩාව වෙනත් කිසිවෙකුට වඩා කැනොනිකල් නොවේ. ඔබ එතරම් හොඳින් ක්‍රියා නොකරන නිෂ්පාදනයක් විකුණන්නේ නම්.
මයිල්ස් බුඩ්නෙක්

2
Up සුපර්බෙස්ට්: බිට්කිපර් වටා බොහෝමයක් (සියල්ලම නොවේ නම්) නිර්මාණය කර ඇත. Git නිර්මාණය කරන ලද්දේ ලිනක්ස්-බිට්කීපර් මතභේදය පුපුරා යාමෙන් පසුවය.
whatsisname

40

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

නමුත් 90% + කාලය, නිසැකවම, අපි යන්නේ මධ්‍යම ගබඩාව හරහාය. කිසියම් විශේෂිත වෙනසක් හෝ විශේෂිත සගයකුගේ වැඩක් ගැන මා තැකීමක් නොකරන විට එය වඩාත් පහසු වන අතර, එක් එක් එන් වෙතින් වෙන වෙනම වෙනස්කම් ඇදගෙන යනවාට වඩා “මගේ සගයන්ගේ සියලු වෙනස්කම් මධ්‍යම රිපෝවේ පරීක්ෂාවට ලක් කර ඇත”. සගයන්. DVCS "ප්‍රධාන රෙපෝ වෙතින් ඇද ගැනීම" වඩාත් සුලභ කාර්ය ප්‍රවාහය වීම වැළැක්වීමට උත්සාහ නොකරයි, එය ලබා ගත හැකි එකම කාර්ය ප්‍රවාහය වීම වැළැක්වීමට උත්සාහ කරයි.

“බෙදා හැරීම” යන්නෙන් අදහස් කරන්නේ gitමෘදුකාංගය සම්බන්ධයෙන් ගත් කල සියලු ගබඩාවන් තාක්‍ෂණිකව සමාන වන නමුත් සංවර්ධකයින් සහ අපගේ කාර්ය ප්‍රවාහයන් සම්බන්ධයෙන් ඔවුන් සියල්ලන්ටම සමාන වැදගත්කමක් ඇති බව එය අනුගමනය නොකරයි. අපි සේවාදායකයින්ට හෝ නිෂ්පාදන සේවාදායකයන්ට මුදා හරින විට, අප එය කිරීමට භාවිතා කරන repo එක ඔවුන්ගේ සංවර්ධකයා විසින් ඔවුන්ගේ ලැප්ටොප් පරිගණකයේ පමණක් භාවිතා කරන repo එකකට වඩා වෙනස් වැදගත්කමක් දරයි.

"සැබවින්ම විමධ්යගත" යනු "විශේෂ ප්රතිමිලදී ඇත" නම් මම ගේ ඇත්ත වසයෙන් ම ඔහු බව ලබා දී එම, ශූර කිරීමට ලිනස් මාර්ගයෙන් හිතන්නේ නැහැ කරන්නේ විශේෂ ප්රතිමිලදී පවත්වා ඇත ප්රමාණයට වඩා, දේවල් කලොත් වඩාත් වැදගත් මම ඊයේ සාදන ලද ලිනක්ස් හි අහඹු ක්ලෝනයක් සහ කුඩා පැච් එකක් සංවර්ධනය කිරීමට පමණක් භාවිතා කිරීමට සැලසුම් කර ඔහු පැච් එක පිළිගත් පසු එය මකා දමන්න. gitමගේ නියෝජිතයාට මගේ වරප්‍රසාදය වරප්‍රසාදයක් නොවේ, නමුත් ලිනස් එයට වරප්‍රසාද ලබා දෙයි. ඔහුගේ "වර්තමාන ලිනක්ස් තත්වය", මගේ නොවේ. එබැවින් ස්වාභාවිකවම වෙනස්කම් සිදු වේලිනස් හරහා යන්න. මධ්‍යගත VCS වලට වඩා DVCS හි ශක්තිය තථ්‍ය මධ්‍යස්ථානයක් නොතිබිය යුතුය, වෙනස්කම් වලට කිසිදු මධ්‍යස්ථානයක් හරහා යා යුතු නැත (ගැටුම් වලට අවසර දෙන) ඕනෑම කෙනෙකුට ඕනෑම දෙයක් ඒකාබද්ධ කළ හැකිය.

ඩීවීසීඑස් පද්ධති විමධ්‍යගත කර ඇති හෙයින්, ඕනෑම දෙයක් කිරීම සඳහා ඔබට දේශීය වශයෙන් සම්පූර්ණ ඉතිහාසයක් (එනම් රෙපෝ) තිබිය යුතුය යන කාරණය මත පදනම්ව ඇතැම් පහසු අංග ලබා දීමට බල කෙරෙයි . නමුත් ඔබ ඒ ගැන සිතන්නේ නම්, ඔබට පැරණි හැඹිලියක් සමඟ මධ්‍යගත වීසීඑස් වින්‍යාස කිරීමට නොහැකි වීමට කිසිදු හේතුවක් නොමැති අතර එය කියවීමට පමණක් වන මෙහෙයුම් සඳහා යල් පැන යාමට අවසර දී ඇත (මම හිතන්නේ කාර්ය සාධනයට මෙම ක්‍රමයට විකල්පයක් ඇත, නමුත් මම කිසි විටෙකත් කාර්ය සාධනය භාවිතා කර නැත). නැතහොත් ප්‍රතිපත්තිමය වශයෙන් ඔබට gitඔබේ සමඟ වින්‍යාසගත කළ හැකිය.git/ඔබට ජාල සම්බන්ධතාවයක් නොමැති විට එය ක්‍රියා නොකරන SVN හි “අංගය” අනුකරණය කිරීම සඳහා දුරස්ථව සවිකර ඇති ගොනු පද්ධතියක නාමාවලිය. ඇත්ත වශයෙන්ම, DVCS මඟින් ජලනල කේන්ද්‍රගත වීසීඑස් එකකින් ගැලවීමට වඩා ශක්තිමත් වීමට බල කරයි. මෙය (ඉතා සාදරයෙන් පිළිගත හැකි) අතුරු ආබාධයක් වන අතර DVCS නිර්මාණය දිරිගැන්වීමට උපකාරී විය, නමුත් තාක්ෂණික මට්ටමින් මෙම වගකීම බෙදා හැරීම සියලු මානව වගකීම් පූර්ණ විමධ්‍යගත කිරීමකට සමාන නොවේ .


7
ඔවුන් තාක්ෂණික වශයෙන් සමාන ය, සමාජීය වශයෙන් සමාන නොවේ .
ಕ್ಯೂරිඩන්නි

3
පැච් එ්වායෙහි පමණක් භාවිතා කරන්න, ඕනෑම කෙනෙකුට එය සලකා බලමින් සිටින පමණක් නඩුවේ, තරමක් වේදනා GIT ආකෘතිය-ලප පසුව GIT යවන්න-ඊ-තැපැල් . ගිතුබ්ගේ ප්‍රවේශ පාලනයන් සමඟ සම්බන්ධ වීමට මට අවශ්‍ය නොවූ විට සහ එය ඉතා සරල වූ විට, සෑම කෙනෙකුටම ඊමේල් ඇත.
රුඩොල්ෆ් ඕලා

1
"ඕනෑම දෙයක් කිරීම සඳහා අනිවාර්යයෙන්ම සම්පූර්ණ ඉතිහාසයක් තිබිය යුතුය [...] දේශීයව" - සත්‍ය නොවේ; නවීන ඩී.එස්.සී.එම්. අර්ධ ගබඩාවලට සහය දක්වයි (bzr අර්ථයෙන් “නොගැඹුරු පිරික්සුම්”, “නොගැඹුරු ක්ලෝන” git පද වලින්).
චාල්ස් ඩෆි

27

DVCS හි ස්වභාවය පිළිබඳ සිත්ගන්නා කරුණ නම්, වෙනත් පුද්ගලයින් එය බෙදා හරින ලද ආකාරයකින් භාවිතා කරන්නේ නම්, ඔවුන් ඔබ සමඟ කෙලින්ම මැදිහත් නොවන්නේ නම් ඔබ එය නොදැන සිටියි. ඔබට නිශ්චිතවම පැවසිය හැකි එකම දෙය නම් ඔබ සහ ඔබේ සෘජු කණ්ඩායමේ සාමාජිකයින් මේ ආකාරයෙන් git භාවිතා නොකිරීමයි. මේ සඳහා සමාගම පුරා ප්‍රතිපත්තියක් අවශ්‍ය නොවේ. එබැවින් මම ඔබෙන් අසමි, ඇයි ඔබ විමධ්‍යගත ආකාරයකින් git භාවිතා නොකරන්නේ ?

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

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

එය කීම සඳහා පරණ ශබ්දයක් ඇසීමේ අවදානමක, ඔබට එය කොතරම් පහසුදැයි ඔබ නොදනී.


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

7
ඔබ හරි, මම දන්නේ නැහැ මට එය කොතරම් පහසුද කියා. එස්වීඑන් ආධිපත්‍යය පැවති සමයේ අප කොතරම් දුරක් පැමිණ ඇත්දැයි වටහා ගැනීමට මම කැමතියි. ඉතා තරුණ මෘදුකාංග සංවර්ධකයෙකු ලෙස, මෙම රටාව බොහෝ විට පුනරාවර්තනය වන බව මට පෙනේ: වඩා පළපුරුදු ඩෙව්ස් මට පවසන්නේ පැරණි දෙයක් කිරීමේ ක්‍රමය නරක බවත්, මෙම නව ක්‍රමය / තාක්‍ෂණය වඩා පහසු බවත්ය. නමුත් මට ඒ සඳහා ඔවුන්ගේ වචනය ගත යුතුය. මට කිසි විටෙකත් වාසි සැබවින්ම අගය කළ නොහැකිය. මෙම විසංවාදය ජය ගැනීමට මට සෑම විටම අපහසු විය.
Gardenhead

1
ard ගාඩන්හෙඩ් ඔබට සැමවිටම ඔබේම SVN repo එකක් සාදා එය බිඳ දැමීමට උත්සාහ කළ හැකිය;) (සහ git repo එකක් සාදා එය ක්ලෝන කිරීමට වඩා එය කොතරම් දුෂ්කර දැයි බලන්න ...) - මා දුටු තවත් ප්‍රධාන අංගයක් (අවම වශයෙන්) ආයතනික පරිසරයන් විශේෂයෙන්) ගොනු හුවමාරුව තරමක් අමුතුයි, නැතහොත් එය සිදු කරනු ලබන්නේ ගබඩාවලට පහර දෙන ආකාරයටය (වෛරස් ස්කෑනරය ජාල ධාවකය තුළ අගුළු දමා ඇති නිසා).
වේන් වර්නර්

4
ard ගාඩන්හෙඩ්: හොඳයි, ඔබ පැරණි ව්‍යාපෘතියක සිරවී නොසිටීම ගැන ඔබ වාසනාවන්තයි කියා සිතන්න, පැරණි මෘදුකාංග සංවර්ධකයින් ඔබට පැරණි දේවල් කරන ආකාරය පවසන විට හොඳයි ... සමහර විට ඔබට උදව් කළ නොහැකි නමුත් ඒවා හුදෙක් යැයි හැඟේ ඔවුන්ට නව තාක්ෂණයන් ඉගෙන ගැනීමට අවශ්‍ය නොවීම ගැන සතුටුයි!
leftaroundabout

1
ard ගාඩන්හෙඩ් පෙනෙන ආකාරයට ව්‍යාපෘති ඉතා උමතු අනුපාතයකින් මුදා හරිනු ලැබේ. පුදුමාකාර රැකියාවක් සොයා ගැනීමට ඔබට අවශ්‍ය නම් ඉගෙනීම දිගටම කරගෙන යාමේ හැකියාව අවශ්‍ය වේ.
වේන් වර්නර්

19

මම හිතන්නේ ඔබේ ප්‍රශ්නය පැමිණෙන්නේ (තේරුම්ගත හැකි) සැමවිටම සම්බන්ධිත මානසිකත්වයකින්. එනම් මධ්‍යම 'සත්‍යය' ci සේවාදායකය සෑම විටම (හෝ සෑම විටම ආසන්නයේ) ඇත. බොහෝ පරිසරවල මෙය සත්‍යයක් වන අතර, මම අවම වශයෙන් මෙයින් දුරස් වූ එකකවත් වැඩ කර ඇත්තෙමි.

මගේ කණ්ඩායම මීට වසර කිහිපයකට පෙර වැඩ කළ මිලිටරි සමාකරණ ව්‍යාපෘතියක්. සියලු කේතය (අපි ඉන්නේ මේ> ඇමරිකානු $ 1 ආ codebase කතා) සිදු විය (නීතිය / ජාත්යන්තර ගිවිසුමට, ඔබ නැති නම් අඳුරු ඇඳුම් කට්ටල මිනිසුන් පැමිණ) යන්ත්ර මත විය සිට ශාරීරිකව හුදෙකලා ඕනෑම අන්තර්ජාල සම්බන්ධතාවයක් . මෙයින් අදහස් කළේ අප සෑම කෙනෙකුටම පළාත් සභා 2 ක් තිබීමයි, එකක් කේතය ලිවීම / ධාවනය කිරීම / පරීක්ෂා කිරීම, අනෙක ගූගල් දේවල්, විද්‍යුත් තැපෑල පරීක්ෂා කිරීම යනාදිය. මෙම යන්ත්‍රවල කණ්ඩායම තුළ දේශීය ජාලයක් පැවතුනි , පැහැදිලිවම කිසිම ආකාරයකින් අන්තර්ජාලයට සම්බන්ධ නොවේ.

“සත්‍යයේ කේන්ද්‍රීය ප්‍රභවය” යනු හමුදා කඳවුරක, සියලු සින්ඩර් බ්ලොක් භූගත ජනේල රහිත කාමරයක (ශක්තිමත් කරන ලද ගොඩනැගිල්ල, යඩා-යඩා) ය. එම යන්ත්‍රයට අන්තර්ජාල සම්බන්ධතාවයක් නොතිබුණි.

වරින් වර, කිලෝමීටර් සිය ගණනක් away තින් පිහිටි හමුදා කඳවුරට (අපගේ සියලු කේත වෙනස්වීම් අඩංගු) git repo සමඟ ධාවකයක් ප්‍රවාහනය කිරීම (භෞතිකව) යමෙකුගේ කාර්යයක් වනු ඇත, එබැවින් ඔබට සිතාගත හැකිය.


එපමණක් නොව, ඔබට විශාල කණ්ඩායම් ඇති ඉතා විශාල පද්ධති වල . ඔවුන් සාමාන්‍යයෙන් සෑම කෙනෙකුම තමන්ගේම "මධ්‍යම" repo එකක් ඇති අතර එය සත්‍ය (දෙවිය ස්ථර) "මධ්‍යම" මධ්‍යම repo වෙත ආපසු යයි. ඔවුන්ගේ කේතය සමඟ එකම දෘ hard තැටි ගිට් රෙපෝ ඩෑෂ් කළ අවම වශයෙන් තවත් කොන්ත්‍රාත්කරුවෙකු ගැන මම දනිමි.

එසේම, ඔබ ලිනක්ස් කර්නලයේ පරිමාණයෙන් යමක් සලකා බැලුවහොත් ... සංවර්ධකයින් ලිනස් වෙත පමණක් ඉල්ලීමක් එවන්නේ නැත. එය අත්‍යවශ්‍යයෙන්ම රෙපෝ හි ධූරාවලියකි - ඒ සෑම එකක්ම යමෙකුට / යම් කණ්ඩායමකට "කේන්ද්‍රීය" විය.

Git හි විසන්ධි වූ ස්වභාවය යන්නෙන් අදහස් කරන්නේ එය සම්බන්ධිත ආකෘති ප්‍රභව පාලන මෙවලම් ( එනම් SVN, එකක් සඳහා) භාවිතා කළ නොහැකි හෝ පහසුවෙන් භාවිතා කළ නොහැකි පරිසරවල භාවිතා කළ හැකි බවයි.


3
මම සැතපුම් හයි (මෘදුකාංග) සමාජයේ සාමාජිකයෙක් - මම අඩි 35,000 ක් උස කේතයක් කර ඇත්තෙමි. ෂුවර්, දැන් ගුවන් යානා වල වයිෆයි ඇත , නමුත් එය සැමවිටම එසේ නොවේ. අවම වශයෙන් අප බිඳ වැටුනත් මගේ කණ්ඩායමට මගේ කේතය නොවෙනස්ව පැවතීමේ හැකියාවක් ඇති බව දැන ගැනීම සතුටක්.
වේන් වර්නර්

Ay වේන් වර්නර් එය සත්‍යයකි. සෑම විටම සම්බන්ධ වීමට නොහැකි (ආසන්න) විය නොහැකි තවත් සාමාන්‍ය තත්වයන් කිහිපයක් සැපයීම ගැන මම කල්පනා කළෙමි. උදා: ගුවන් යානයක, මුහුදේ බෝට්ටුව, අභ්‍යවකාශ මධ්‍යස්ථානය, අප්‍රිකාවේ දුර බැහැර ස්ථාන ආදිය
ටර්සෝසෝරෝස්

18

අවසානයේදී, ඔබ නිෂ්පාදනයක් ගොඩනඟයි. මෙම නිෂ්පාදනය ඔබේ කේතය එකවර එකවර නියෝජනය කරයි. එය ලබා දී ඇති විට, ඔබේ කේතය කොතැනක හෝ සමපාත විය යුතුය . ස්වාභාවික ලක්ෂ්‍යය යනු නිෂ්පාදිතය ගොඩනගා ඇති ci සේවාදායකයක් හෝ මධ්‍යම සේවාදායකයක් වන අතර මෙම කේන්ද්‍රීය ලක්ෂ්‍යය git ගබඩාවක් බව හැඟේ.


14

ඩීවීසීඑස් හි බෙදා හරින ලද අංගය සෑම විටම විවෘත මූලාශ්‍ර සංවර්ධනයේ දී දෙබලක ස්වරූපයෙන් පෙන්වයි. නිදසුනක් වශයෙන්, මම දායක වන සමහර ව්‍යාපෘති මුල් කතුවරයා විසින් අතහැර දමා ඇති අතර දැන් දෙබලක පොකුරක් ඇත, එහිදී නඩත්තු කරන්නන් සමහර විට එකිනෙකාගෙන් විශේෂිත අංග ඇද ගනී. පොදුවේ ගත් කල, ඕඑස්එස් ව්‍යාපෘති අහඹු ලෙස මිනිසුන්ට සත්‍ය-සත්‍ය ගබඩාවට ප්‍රවේශය ලබා දීම වෙනුවට, ඉල්ලීම් හරහා බාහිර දායකත්වය ලබා ගනී.

නිශ්චිත නිල නිකුතුවක් සමඟ කොන්ක්‍රීට් නිෂ්පාදනයක් තැනීමේදී මෙය සාමාන්‍ය දෙයක් නොවේ, නමුත් එෆ් / ඕඑස්එස් ලෝකයේ එය සාමාන්‍යය මිස ව්‍යතිරේකය නොවේ.


4
Answer තිහාසික දෘෂ්ටි කෝණයකින් ද එය නිවැරදි පිළිතුරයි. ලිනක්ස් කර්නලයට දීර් source කාලයක් තිස්සේ බහු ප්‍රභව ගබඩාවන් ඇත (සංවර්ධකයින් විසින් "ලිනස් ගස" හෝ "ඇන්ඩ rew ගේ ගස" වැනි "ගස්" ලෙස හැඳින්වේ). ලිනක්ස් හට git සංවර්ධනය කරන විට එම ආකාරයේ බෙදා හරින ලද සංවර්ධනයට සහාය වීමට යමක් අවශ්‍ය විය.
sleske

ULuaan මේ ගැන ටික වේලාවක් කල්පනා කිරීමෙන් පසුව, ඔබ නිවැරදි බව මට වැටහුණි. මම වචන ටිකක් වෙනස් කර ඇත්තෙමි - මෙය වෙනස මඳක් වටහා ගන්නේද?
සුදුමැලි

lfluffy මට හොඳයි;)
Luaan

9

සෑම කෙනෙකුම කේන්ද්‍රීය ආකාරයකින් git භාවිතා කරන්නේ ඇයි?

අපට කවදාවත් හමු වී නැත, ඔබ සියල්ලන්ටම කියන්නේ කෙසේද? ;)

දෙවනුව, ඔබ Git හි සොයා ගන්නා තවත් විශේෂාංග තිබේ, නමුත් CVS හෝ SVN තුළ නොවේ. සමහර විට එය හුදෙක් ඔබ මේ විය යුතු බව උපකල්පනය කරනවා පමණක් ලක්ෂණය සඳහා සෑම .

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

මගේ මතය මෙය අමතක නොකළ යුතු තවත් ලක්ෂණයකි.

සීවීඑස් සහ එස්වීඑන් කොටුවෙන් පිටත ඔබට මෙය කළ නොහැකි අතර, Git කිසිදු ගැටළුවක් නොමැතිව කලින් තිබූ ඒවා මෙන් මධ්‍යගතව භාවිතා කළ හැකිය.

ඒ නිසා මට මගේ වෙනස්කම් කිරීමට හැකියාවක් ඇත, සමහර විට ස්කොෂ් වැඩ කිරීමේ ප්‍රගතිය එකට එකතු වී, පසුව මගේ වැඩ කටයුතු ප්‍රධාන සංවර්ධන ශාඛාවට ගෙන ඒමට සහ නැවත ප්‍රතිස්ථාපනය කිරීමට මට හැකිය.

Git සමඟ කොටුවෙන් එළියට එන වෙනත් විශේෂාංග:

  • ගුප්ත විද්‍යාත්මකව සං sign ා කරයි
  • නැවත සැකසීම (නැවත සකසන්න සහ ස්කොෂ් කොමිස්; සංස්කරණය කරන්න, පණිවිඩය පමණක් නොවේ)
  • චෙරි අච්චාරු දැමීම
  • ඉතිහාසය දෙකට බෙදීම
  • දේශීය ශාඛා සහ විශාල වෙනස්කම් (විකිපීඩියාවේ "රාක්ක" ලෙස හැඳින්වේ)

විකිපීඩියාවේ මෙම වගු තුනද බලන්න - අනුවාද පාලන මෘදුකාංග සංසන්දනය :

එබැවින් නැවතත්, විමධ්‍යගත ක්‍රමය මිනිසුන් භාවිතා කිරීමට පොළඹවන එකම ලක්ෂණය නොවේ.

  1. ප්‍රායෝගිකව මිනිසුන් Git සඳහා බෙදා හරින ලද කාර්ය ප්‍රවාහයක් භාවිතා නොකරන්නේ ඇයි?

Bitbucked, GitHub යනාදී විශාල ව්‍යාපෘතියකට දායක වන හෝ සත්කාර කරන ඕනෑම අයෙකු එය හරියටම කරනු ඇත. නඩත්තු කරන්නන් "ප්‍රධාන" ගබඩාව, දායක ක්ලෝන තබා, සිදු කර පසුව ඉල්ලීමක් යවයි.

සමාගම්වල, කුඩා ව්‍යාපෘති හෝ කණ්ඩායම් සමඟ වුවද, බෙදා හරින ලද කාර්ය ප්‍රවාහයක් යනු මොඩියුලයන් බාහිරින් ලබා ගන්නා අතර බාහිර වෙනස්වීම් කලින් සමාලෝචනය නොකර පූජනීය සංවර්ධන ශාඛාව (එස්) වෙනස් කිරීමට බාහිරයන්ට අවශ්‍ය නොවන විටය.

  1. නවීන අනුවාද පාලනයට පවා බෙදා හැරීමේ ආකාරයකින් වැඩ කිරීමේ හැකියාව වැදගත්ද, ...

සෑම විටම මෙන්: එය අවශ්යතා මත රඳා පවතී.

කිසියම් කරුණක් අදාළ වන්නේ නම් විමධ්‍යගත VCS භාවිතා කරන්න:

  • ඉතිහාසය නොබැඳි ලෙස සිදු කිරීමට හෝ සැරිසැරීමට අවශ්‍යය (එනම් නිවාඩු කාලය තුළ මවුන්ටන් කැබින් තුළ උප මොඩියුලය අවසන් කිරීම)
  • කේන්ද්‍රීය නිධි සපයන නමුත් වෙනස්කම් සමාලෝචනය කිරීම සඳහා "සත්‍ය" ගබඩාව වෙන් කර තබා ගැනීමට අවශ්‍යය (එනම් විශාල ව්‍යාපෘති හෝ බෙදා හරින ලද කණ්ඩායම් සඳහා)
  • මධ්‍යම වාර්තාවට සෘජුවම පිවිසීම වළක්වන අතරම ඉඳහිට සමස්ත ඉතිහාසය හා ශාඛා ලබා දීමට (පිටපතක්) අවශ්‍ය වේ (දෙවන එකට සමාන)
  • යමක් දුරස්ථව ගබඩා නොකර හෝ විශේෂිත ගබඩාවක් සැකසීමකින් තොරව යමක් සංස්කරණය කිරීමට අවශ්‍යය (විශේෂයෙන් Git සමඟ git init .යමක් අනුවාද කිරීමට සූදානම් වීමට ප්‍රමාණවත් වනු ඇත)

තවත් කිහිපයක් ඇති නමුත් හතරක් ප්‍රමාණවත් විය යුතුය.

... නැත්නම් ඒක හොඳද?

ඇත්ත වශයෙන්ම එය හොඳයි වගේ - ආරම්භකයින් සඳහා.


svn initයම් අවස්ථාවක SVN වාසි ලබා ගත්තේ නැද්ද ?
user253751

5

නම්‍යශීලීභාවය යනු ශාපයක් මෙන්ම ආශීර්වාදයකි. Git අතිශයින්ම නම්‍යශීලී බැවින් එය සෑම විටම පාහේ දුරස් වේ ද නම්යශීලී සාමාන්ය තත්වය සඳහා. විශේෂයෙන්, බොහෝ Git ව්‍යාපෘති ලිනක්ස් නොවේ.

එහි ප්‍රති As ලයක් ලෙස, ස්මාර්ට් තේරීම වන්නේ Git ක්‍රියාත්මක කිරීමේදී එම න්‍යායාත්මක නම්‍යශීලී බව ඉවත් කිරීමයි. න්‍යාය අනුව ගබඩාවලට ඕනෑම ප්‍රස්ථාරයක් සෑදිය හැකිය, ප්‍රායෝගිකව සුපුරුදු තේරීම ගසක් වේ. ප්‍රස්ථාර න්‍යාය භාවිතයෙන් අපට පැහැදිලි ප්‍රතිලාභ දැකිය හැකිය: ගබඩාවල ගසක, ඕනෑම ගබඩාවක් දෙකක් හරියටම එක් මුතුන් මිත්තෙකු බෙදා ගනී. අහඹු ප්‍රස්ථාරයක, මුතුන් මිත්තෙකුගේ අදහස පවා නොපවතී!

කෙසේ වෙතත් ඔබේ git සේවාදායකයා නිසැකවම "තනි මුතුන් මිත්තන්ගේ" ආකෘතියට පෙරනිමි. නෝඩ් වල තනි මුතුන් මිත්තෙකු සිටින ප්‍රස්ථාර (මූල නෝඩයක් හැර) හරියටම ගස් වේ. එබැවින් ඔබේ git සේවාදායකයාම ගස් ආකෘතියට පෙරනිමිය, එබැවින් මධ්‍යගත ගබඩාවන්.


1
බොහෝ භාවිත අවස්ථා සඳහා Git හි නම්‍යශීලී බව අඩු කළ යුතු බව මම එකඟ වෙමි. මගේ අන්තිම රැකියාවේදී, අපට git භාවිතා කරන්නේ කෙසේද යන්න පිළිබඳ මාර්ගෝපදේශ නොතිබූ අතර, මේ හේතුවෙන් නිරන්තර ගැටුම් හා බිඳවැටීම් ඇති විය. මගේ නව සමාගමෙහි, අපි Git Flow ආකෘතිය භාවිතා කරන අතර, එමඟින් සංවර්ධනය වඩාත් විධිමත් හා ආතතියෙන් තොර වේ.
Gardenhead

1
ගස් නොවන අයට ඉඩ දීම “න්‍යායාත්මක නම්යශීලීභාවය” නොවේ. "ගස් වලට පමණක්" සීමා වන්න, එවිට ඔබට කිසි විටෙකත් ඔබගේ වෙනස්කම් සමඟ ඒකාබද්ධ වීමට නොහැකි වනු ඇත, එමඟින් ඔබේ සමස්ත VCS තරමක් අර්ථ විරහිත වේ.
වයිල්ඩ්කාඩ්

2
Ild විල්ඩ්කාඩ්: ගස් සමඟ ඒකාබද්ධ කිරීම කිසිසේත්ම ගැටලුවක් නොවේ, එය එසේ වන්නේ ඇයි? අහඹු නෝඩ් අතර, ඇත්ත වශයෙන්ම, දෙමව්පියන් / දරුවා අතර ඔබට ඒකාබද්ධ කළ නොහැක.
MSalters

1
මට ප්‍රමාණවත් තරම් පැහැදිලි නැත. මා සඳහන් කළේ ගොනු පද්ධතියේ ගසක් නොව කොමිස් ගසක් ගැන ය. අර්ථ දැක්වීම අනුව, ඒකාබද්ධ කිරීමේ බැඳීමකට දෙමව්පියන් එකකට වඩා සිටින අතර, ඔබේ ඉතිහාස ප්‍රස්ථාරය තවදුරටත් ගසක් නොව, ඒ වෙනුවට DAG වේ.
වයිල්ඩ්කාඩ්

2
IldWildcard: MSalters පැවසුවේ නිධි සාමාන්‍යයෙන් සම්බන්ධ වන්නේ ගස් ලෙස මිස කොමිස් නොවන බවයි. ඔහු කියන්නේ සාමාන්‍යයෙන් ගබඩාවලට ඇත්තේ එක් “උඩුමහලේ” දුරස්ථයක් පමණක් ඔවුන් තල්ලු කරන බවයි (නැතහොත් ඉල්ලීම් නිකුත් කිරීම). එය සත්‍යද නැද්ද යන්න පිළිබඳ කිසිදු සංඛ්‍යාලේඛනයක් මා සතුව නැත, නමුත් එය ඒකාබද්ධ කිරීමේ කැපවීම කොපමණ දෙමව්පියන් සතුව තිබේද යන්න සම්බන්ධව ඕනෑම දෙයකින් සම්පූර්ණයෙන්ම වෙන් වූ ප්‍රකාශයකි.
ස්ටීව් ජෙසොප්

4

ව්‍යාපාර තර්කනය මධ්‍යගත සේවාදායකයකට ප්‍රතිලාභ ලබා දෙයි. යථාර්ථවාදී ව්‍යාපාරික අවස්ථා සියල්ලටම පාහේ, මධ්‍යගත සේවාදායකයක් යනු කාර්ය ප්‍රවාහයේ මූලික ලක්ෂණයකි.

ඔබට DVCS කිරීමට හැකියාවක් ඇති පමණින් ඔබේ මූලික වැඩ ප්‍රවාහය DVCS විය යුතු යැයි අදහස් නොකෙරේ. මම වැඩ කිරීමේදී git භාවිතා කරන විට, අපි එය මධ්‍යගත ආකාරයකින් භාවිතා කරමු, දේවල් ඉදිරියට ගෙනයාමට බෙදා හරින ලද බිට් අත්‍යවශ්‍ය වූ අමුතු අමුතු අවස්ථා හැර.

දේවල් බෙදා හරින පැත්ත සංකීර්ණයි. සාමාන්‍යයෙන් ඔබට අවශ්‍ය වන්නේ දේවල් සුමටව හා පහසුවෙන් තබා ගැනීමටයි. කෙසේ වෙතත්, git භාවිතා කිරීමෙන් ඔබට පාරේ ඇතිවිය හැකි අමිහිරි තත්වයන් සමඟ කටයුතු කිරීම සඳහා බෙදා හරින ලද පැත්තට ප්‍රවේශය ඇති බව සහතික කරයි.


3

සහායකයකුට මගේ යන්ත්‍රයේ ඇති git repo එකකින් අදින්න යන්නෙන් අදහස් කරන්නේ මට පසුබිම් කාර්යයක් ලෙස මූල මට්ටමින් ක්‍රියාත්මක වන git ඩීමන් තිබිය යුතු බවයි. මගේ පරිගණකයේ හෝ සමාගම විසින් සපයන ලද ලැප්ටොප් පරිගණකයේ ධාවනය වන ඩීමන් ගැන මම ඉතා සතුටු වෙමි. පහසුම විසඳුම "නැත" යන්නයි! සහායකයෙකුට මගේ යන්ත්‍රයේ ඇති git repo එකකින් අදින්න යන්නෙන් අදහස් කරන්නේ මගේ අන්තර්ජාල ලිපිනය නිවැරදි කළ යුතු බවයි. මම සංචාරය කරනවා, මම ගෙදර සිට වැඩ කරනවා, ඉඳහිට මගේ කාර්යාලයෙන් වැඩ කරනවා.

අනෙක් අතට, ආයතනික වෙබ් අඩවියට VPNing කිරීම සහ ශාඛාවක් මධ්‍යම ගබඩාවට තල්ලු කිරීම විනාඩියකටත් අඩු කාලයක් ගතවේ. මම කාර්යාලයේ සිටී නම් මට VPN කිරීමට අවශ්‍ය නැත. මගේ සහායකයින්ට එම ශාඛාවෙන් පහසුවෙන් ඇද ගත හැකිය.

තෙවනුව, මගේ දේශීය git repo යනු අංග සම්පූර්ණ ගබඩාවකි. මට නව වැඩක් කළ හැකිය, පර්යේෂණාත්මක වැඩ සඳහා නව ශාඛාවක් නිර්මාණය කළ හැකිය, සහ මම යම් යම් අවුල් සහගත තත්වයන් ඇති කරන විට, මම කොතැනක හෝ මැදින් අඩි 30,000 ක් පමණ ඉහළින් පියාසර කරන ගුවන් යානයක වැඩ කරන විට පවා වැඩ නැවත ලබා ගත හැකිය. මධ්යගත අනුවාද පාලන පද්ධතියක් සමඟ එය කිරීමට උත්සාහ කරන්න.


"මම මගේම පරිගණකයක හෝ සමාගම විසින් සපයන ලද ලැප්ටොප් පරිගණකයේ ධාවනය වන ඩීමන් ගැන ඉතා සතුටු වෙමි." - වෙනත් ඕනෑම දෙයක් පසෙක තබා, මගේ ලැප්ටොප් පරිගණකයේ සේවාවක් ධාවනය කිරීම යනු මම පියන වසා දැමූ විට සේවාව ලබා ගත නොහැකි බවයි! DynDNS ස්ථාන කිහිපයකට උදව් කළ හැකිය (යම් තාක් දුරට ඔබට තවමත් NAT එකක සිරවී සිටිය හැකිය), නමුත් එය ඔබගේ ජාල කාඩ්පත බල ගැන්වීමට උපකාරී නොවේ ...
ස්ටීව් ජෙසොප්

විශේෂ ඩීමන් ධාවනය නොකර git repo දෘශ්‍යමාන කිරීමට බොහෝ ක්‍රම තිබේ; ඕනෑම ලිපිගොනු හුවමාරුවක් (smb, sshfs, ආදිය) හරහා එයට ප්‍රවේශ විය හැකි අතර එය සාමාන්‍ය ඔල් HTTP ගබඩාවක් ලෙසද ලබා ගත හැකිය.
සුදුමැලි

2

සංකීර්ණත්වය:

මධ්යම ගබඩාවක් සමඟ, සාමාන්ය වැඩ ප්රවාහයක් විය හැකිය

branch off from the central master branch
change the code
test
possibly go back to changing the code
commit
merge any new changes from the central master branch
test
possibly go back to changing the code
merge changes into the central master branch and push

O (1) හි සංවර්ධකයින් සංඛ්‍යාවට සාපේක්ෂව සංකීර්ණත්වය.

ඒ වෙනුවට එක් එක් සංවර්ධකයාට තමන්ගේම ප්‍රධාන ශාඛාවක් තිබේ නම් එය සංවර්ධකයා 0 බවට පත්වේ:

branch off from master branch 0
merge from master branch 1
...
merge from master branch N-1
change the code
test
possibly go back to changing the code
commit
merge any changes from master branch 0
merge any changes from master branch 1
...
merge any changes from master branch N-1
test
possibly go back to changing the code
merge changes into master branch 0

සම වයසේ සිට සම වයසේ ප්‍රවේශය O (N) වේ.

අනුකූලතාව:

ඇලිස්ගේ ප්‍රධාන ශාඛාව සහ බොබ්ගේ ප්‍රධාන ශාඛාව අතර ඒකාබද්ධ ගැටුමක් තිබේදැයි දැන් සලකා බලන්න. එක් එක් එන් සංවර්ධකයින්ට ගැටුම වෙනස් ආකාරයකින් විසඳා ගත හැකිය. ප්‍රති ult ලය: අවුල් සහගතය. අවසාන වශයෙන් අනුකූලතාව ළඟා කර ගත හැකි ක්‍රම තිබේ, නමුත් එය සිදු වන තුරු, සියලු ආකාරයේ සංවර්ධකයින්ගේ කාලය නාස්ති කළ හැකිය.


ඔබ ඡන්දය ප්‍රකාශ කිරීමට යන්නේ නම්, කරුණාකර ඒ පිළිබඳව අදහස් දැක්වීමක් කළ හැකිද?
තියඩෝර් නොර්වෙල්

පහත වැටීම් මට මතක නැති බව නොවේ. මට දැන ගැනීමට අවශ්‍ය වන්නේ පිළිතුර යම් ආකාරයකින් වැරදියිද යන්නයි.
තියඩෝර් නොර්වෙල්

1

සරල:

සමාගම් යනු මධ්‍යගත වැඩ ප්‍රවාහයක් සහිත මධ්‍යගත සංවිධාන වේ.

සෑම ක්‍රමලේඛකයෙකුටම ලොක්කා සිටින අතර ඔහුට ඔහුගේ ලොක්කා යනාදිය CTO දක්වා ඇත. තාක්ෂණික සත්‍යයේ අවසාන ප්‍රභවය CTO ය. සමාගම කුමන මෙවලම් භාවිතා කළත්, එය මෙම විධාන දාමය පිළිබිඹු කළ යුතුය. සමාගමක් හමුදාවක් හා සමානයි - ඔබට ජෙනරාල්වරයකු අභිබවා යාමට පුද්ගලයන්ට ඉඩ දිය නොහැක.

GIT සමාගම් වලට ප්‍රයෝජනවත් වන විශේෂාංග ඉදිරිපත් කරයි (උදා: කේත සමාලෝචනය සඳහා ඉල්ලීම් අදින්න) සහ එමඟින් පමණක් ඔවුන් GIT වෙත මාරු වේ. විමධ්‍යගත කොටස හුදෙක් ඔවුන්ට අවශ්‍ය නොවන අංගයකි - එබැවින් ඔවුන් එය නොසලකා හරිති.

ඔබේ ප්‍රශ්නයට පිළිතුරු සැපයීම සඳහා: බෙදා හරින ලද කොටස බෙදා හරින ලද පරිසරය තුළ සැබවින්ම උසස් ය, උදා: විවෘත මූලාශ්‍රය. කවුරුන් කතා කරන්නේද යන්න මත පදනම්ව ප්‍රති Results ල වෙනස් වේ. ලිනස් ටොවල්ඩ්ස් හරියටම ඔබේ කුටියේ මීයා නොවේ, ඔබේ ගිතුබ් කේන්ද්‍රීය සමාගමට වඩා GIT හි විවිධ අංග ඔහුට වැදගත් වන්නේ එබැවිනි.


-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.