ٻوٽو، هڪ Git-مطابقت رکندڙ سورس ڪوڊ ڪنٽرول سسٽم

ٻيٽ

ٻوٽو استعمال جي آسانيءَ تي زور ڏئي ٿو جڏهن ته دنيا جي سڀ کان وڏي ريپوزٽريز کي ماپڻ.

فيس بڪ اڻ ڏٺي وئي هڪ بلاگ پوسٽ ذريعي ذريعو ڪوڊ مينيجمينٽ سسٽم پوکڻ ڪمپني جي اندروني منصوبن جي ترقي ۾ استعمال ڪيو. سسٽم هڪ ورزن ڪنٽرول انٽرفيس مهيا ڪرڻ جو مقصد واقف جيڪي لکين فائلن، ڪمنٽس ۽ شاخن جي وڏين وڏين ذخيرن کي ماپ ڪري سگھن ٿا.

سسٽم جو بنيادي خيال اهو آهي ته سرور جي هڪ خاص حصي سان لهه وچڙ ڪندي جيڪا ذخيرو اسٽوريج مهيا ڪري ٿي، سڀني عملن جي ماپ فائلن جي تعداد جي بنياد تي اصل ۾ استعمال ٿيل ڪوڊ ۾ ڊولپر ڪم ڪري رهيو آهي، ۽ پوري مخزن جي ڪل سائيز تي منحصر نه آهن.

مثال طور، هڪ ڊولپر استعمال ڪري سگهي ٿو ڪوڊ جو صرف هڪ ننڍڙو حصو هڪ تمام وڏي مخزن مان، ۽ صرف اهو ننڍڙو حصو، ۽ نه سڄو مخزن، انهن جي سسٽم ڏانهن منتقل ڪيو ويندو. ڪم ڪندڙ ڊاريڪٽري متحرڪ طور تي ڀريل آهي، جيئن ته مخزن جي فائلن تائين رسائي حاصل ڪئي ويندي آهي، جيڪا، هڪ طرف، توهان کي توهان جي ڪوڊ جي حصي سان ڪم کي تيز ڪرڻ جي اجازت ڏئي ٿي، پر ٻئي طرف، ان کي سست ڪري ٿو جڏهن توهان ان تائين رسائي حاصل ڪندا آهيو. پهريون ڀيرو نئين فائلن ڏانهن ۽ مسلسل نيٽ ورڪ جي رسائي جي ضرورت آهي (الڳ طور مهيا ڪيل ۽ آف لائن-ڪمٽ تياري موڊ).

موافقت واري ڊيٽا لوڊ ڪرڻ کان علاوه، سيپلنگ پڻ اصلاحن کي لاڳو ڪري ٿو جنهن جو مقصد تبديلين جي تاريخ سان معلومات جي لوڊ کي گهٽائڻ آهي. (مثال طور، لينڪس ڪنيل سان گڏ مخزن ۾ ڊيٽا جو 3/4 تبديلي جي تاريخ آهي).

تبديلي جي تاريخ سان مؤثر طريقي سان ڪم ڪرڻ لاءِ، ان سان جڙيل ڊيٽا هڪ ڀاڱي ۾ محفوظ ٿيل آهي، جيڪا توهان کي سرور مان ڪمٽ گراف جا الڳ حصا ڊائون لوڊ ڪرڻ جي اجازت ڏئي ٿي. ڪلائنٽ ڪيترن ئي تصديق جي رشتي بابت معلومات لاء سرور کان پڇي سگهي ٿو ۽ گراف جو صرف ضروري حصو ڊائون لوڊ ڪري سگهي ٿو.

اهو منصوبو گذريل 10 سالن کان ترقي ۾ آهي ۽ مسئلن کي حل ڪرڻ لاءِ پيدا ڪيو ويو هو جڏهن هڪ ماسٽر برانچ سان تمام وڏي monolithic repositories تائين رسائي حاصل ڪئي وئي هئي، جتي "ضم" جي بدران "ري بيس" آپريشن کي استعمال ڪرڻ جي مشق ڪئي وئي هئي.

ان وقت، اهڙن ذخيرن سان ڪم ڪرڻ لاءِ ڪو به کليل حل موجود نه هو، ۽ فيس بڪ انجنيئرن فيصلو ڪيو ته هڪ نئون ورجن ڪنٽرول سسٽم ٺاهيو جيڪو ڪمپني جي ضرورتن کي پورو ڪري، بجاءِ منصوبن کي ننڍن ذخيرن ۾ ورهائي، جنهن جي ڪري وڌيڪ پيچيده انحصار انتظام (انجنيئرز) هڪ دفعي، ساڳئي مسئلي کي حل ڪرڻ لاء، Microsoft ٺاهيل GVFS پرت).

شروعات ۾، فيسبوڪ Mercurial سسٽم استعمال ڪيو ۽ سيپلنگ پروجيڪٽ شروعاتي طور تي مرڪيوريل جي اضافي طور تي ترقي ڪئي وئي. وقت سان گڏ، سسٽم هڪ آزاد منصوبو بڻجي ويو ان جي پنهنجي پروٽوڪول، اسٽوريج فارميٽ، ۽ الگورتھم سان، جنهن کي پڻ وڌايو ويو Git repositories سان رابطو ڪرڻ جي صلاحيت سان.

ڪم لاء، ڪمانڊ لائن افاديت "sl" تجويز ڪيل آهي، جيڪو Git ۽ Mercurial سان واقف ڊولپرز کان واقف عام تصورات، ڪم ​​جي فلوز، ۽ انٽرفيس کي لاڳو ڪري ٿو. Sapling ۾ اصطلاح ۽ ڪمانڊ Git کان ٿورو مختلف ۽ Mercurial جي ويجهو آهن.

اضافي خاصيتن جي وچ ۾ ٻوٽي جو، نمايان ڪري ٿو "سمارٽ رجسٽريشن" لاء سپورٽ (smartlog)، جيڪو توهان کي توهان جي مخزن جي حالت جو جائزو وٺڻ جي اجازت ڏئي ٿو، سڀ کان اهم معلومات کي نمايان ڪريو ۽ نابالغ تفصيلن کي فلٽر ڪريو. مثال طور، جڏهن توهان sl افاديت کي بغير ڪنهن دليلن سان هلائيندا آهيو، صرف توهان جون پنهنجون مقامي تبديليون ظاهر ٿينديون آهن (پرڏيهي ختم ٿي وينديون آهن)، خارجي شاخن جي حالت، تبديل ٿيل فائلون، ۽ ڪمن جا نوان ورزن ڏيکاريا ويندا آهن. ان کان علاوه، هڪ انٽرايڪٽو ويب انٽرفيس مهيا ڪيو ويو آهي تيز نيويگيشن لاءِ سمارٽ لاگ ذريعي، وڻ کي تبديل ڪريو، ۽ ڪمٽس.

ٻوٽي ۾ هڪ ٻيو قابل ذڪر سڌارو اهو آهي اهو غلطين کي درست ڪرڻ ۽ تجزيو ڪرڻ ۽ پوئين حالت ڏانهن موٽڻ جي عمل کي تمام آسان بڻائي ٿو. مثال طور، "sl undo"، "sl redo"، "sl uncommit" ۽ "sl unmend" ڪيترن ئي عملن کي ريورس ڪرڻ جي صلاح ڏني وئي آهي، "sl hide" ۽ "sl unhide" عارضي طور تي لڪائڻ لاءِ ڪمٽٽس ۽ انٽرايڪٽو نيويگيشن لاءِ. رياستون سيپلنگ هڪ ڪمٽ اسٽيڪ جي تصور کي پڻ سپورٽ ڪري ٿي، جيڪا توهان کي اجازت ڏئي ٿي ته توهان هڪ جائزي جي قدم کي ترتيب ڏئي، پيچيده ڪارڪردگي کي ٽوڙڻ جي ذريعي هڪ ننڍڙي، وڌيڪ سمجھڻ واري واڌاري واري سيٽ تبديلين (بنيادي فريم ورڪ کان فائنل فيچر تائين).

الڳ الڳ ، مخزن سان گڏ موثر ريموٽ ڪم لاءِ سرور جو حصو تيار ڪيو ويو ۽ هڪ ورچوئل فائل سسٽم کي ڪم ڪرڻ لاءِ مخزن جي هڪ حصي جي مقامي حصي سان ڄڻ ته اهو هڪ مڪمل مخزن آهي (ڊولپر سڄي مخزن کي ڏسي ٿو، پر صرف گهربل ڊيٽا کي نقل ڪيو ويو آهي مقامي سسٽم ڏانهن، جنهن تائين رسائي آهي).

فيس بڪ جي انفراسٽرڪچر ۾ استعمال ٿيندڙ انهن حصن جو ڪوڊ اڃا کليل ناهي، پر ڪمپني ان کي مستقبل ۾ جاري ڪرڻ جو واعدو ڪيو آهي. بهرحال، Mononoke سرور (Rust ۾) ۽ VFS EdenFS (C ++ ۾) پروٽوٽائپس اڳ ۾ ئي سيپلنگ مخزن ۾ ملي سگھن ٿا. اهي جزا اختياري آهن ۽ سيپلنگ ڪلائنٽ ڪم ڪرڻ لاءِ ڪافي آهي، جيڪو مدد ڪري ٿو گيٽ ريپوزٽريز کي ڪلون ڪرڻ، گيٽ LFS-بنياد سرورز سان لهه وچڙ ۾، ۽ GitHub وانگر گٽ هوسٽ سان ڪم ڪرڻ.

سيپلنگ لاءِ ڪيترائي پلگ ان تيار ڪيا ويا آهن، بشمول تبديلين جو جائزو وٺڻ لاءِ ReviewStack انٽرفيس (GPLv2 تحت ڪوڊ)، جيڪو توهان کي GitHub تي پل درخواستن تي عمل ڪرڻ جي اجازت ڏئي ٿو ۽ اسٽيڪ اسٽيڪ ڏيک کي تبديل ڪرڻ جي اجازت ڏئي ٿو.

جيڪڏھن توھان ان بابت وڌيڪ ڄاڻڻ ۾ دلچسپي رکو ٿا، توھان تفصيل سان صلاح ڪري سگھو ٿا هيٺين لنڪ ۾.


مضمون جو مواد اسان جي اصولن تي عمل ڪري ٿو ايڊيٽوريل اخلاقيات. غلطي ڪلڪ ڪرڻ جي رپورٽ لاءِ هتي.

تبصرو ڪرڻ جو پهريون

پنهنجي راءِ ڏيو

پنهنجي اي ميل ايڊريس شايع نه ڪيو ويندو. گهري شعبن سان لڳل آهن *

*

*

  1. ڊيٽا جو ذميوار: Miguel Ángel Gatón
  2. ڊيٽا جو مقصد: ڪنٽرول سپيم ، تبصرو جي انتظام.
  3. سازش: توهان جي رضامندي
  4. ڊيٽا جي ابلاغ: ڊيٽا کي قانوني ذميواري کانسواءِ ٽئين پارٽين تائين رسائي نه ڏني ويندي.
  5. ڊيٽا اسٽوريج: ڊيٽابيس اويسينٽس نيٽورڪ (اي يو) پاران ميزباني ڪيل
  6. حق: ڪنهن به وقت توهان پنهنجي معلومات کي محدود ، ٻيهر ۽ ختم ڪري سگهو ٿا.