ورهايل ماخذ ڪنٽرول سسٽم جي ڇڏڻ Git 2.22

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

پوئين رليز جي مقابلي ۾، نئين ورزن ۾ 745 تبديليون شامل آهن، 74 ڊولپرز جي شموليت سان تيار ڪيل، جن مان 18 پهريون ڀيرو ترقي ۾ حصو ورتو. مکيه جدت:

  • رليز 1.18 کان وٺي دستياب آهي، نئون ڪمٽ ريبيس موڊ "گٽ ريبيس --ريبيس-مرجز" پراڻي "--پريزرو-مرجز" اختيار کي تبديل ڪري ٿو، جيڪو هاڻي ختم ڪيو ويو آهي. ”گٽ ريبيس“ آپريشن استعمال ڪيو ويندو آهي ڪمٽ جي هڪ سيريز کي نئين بيس ڪمٽ سان تبديل ڪرڻ لاءِ، مثال طور، هڪ الڳ برانچ کي منتقل ڪرڻ لاءِ جيڪا ترقي ڪري رهي آهي ڪجهه نئين فيچر کي ماسٽر برانچ جي موجوده حالت ۾، جنهن ۾ شامل ڪيل فيڪس شامل آهن برانچ کان پوءِ. :

    o - o - o (منهنجي خصوصيت)

    /

    او - او - او - او (ماسٽر)

    o - o - o (منهنجي خصوصيت)

    /

    او - او - او - او (ماسٽر)

    لڏپلاڻ ٿيل برانچ ۾ شاخ جي جوڙجڪ کي محفوظ ڪرڻ لاء، "--preserve-merges" اختيار اڳ ۾ استعمال ٿي سگهي ٿو، جيڪو، جڏهن انٽرايڪٽو موڊ ۾ هلندو هو (git rebase -i --preserve-merges)، ڪمٽ جي تاريخ کي ايڊٽ ڪرڻ جي اجازت ڏني وئي، پر مخزن جي جوڙجڪ جي مڪمل تحفظ جي ضمانت نه ڏني. نئون "--rebase-merges" موڊ توهان کي لڏپلاڻ ٿيڻ واري برانچ ۾ تبديلين جي جوڙجڪ کي محفوظ ڪرڻ جي اجازت ڏئي ٿو، جڏهن ته انٽرايڪٽو عملن جي مڪمل رينج مهيا ڪري ٿي، بشمول ڊيليٽ ڪرڻ، ٻيهر منظم ڪرڻ ۽ نالو تبديل ڪرڻ.

    مثال طور، "--rebase-merges" اها ڳالهه جي اجازت ڏئي هڪ الڳ برانچ کان نئين ماسٽر برانچ تي ڪمٽ ٻيهر اپلوڊ ڪريو، لڏپلاڻ ٿيل برانچ ۾ برانچ جي جوڙجڪ کي برقرار رکندي، ۽ فلائي تي ڪمٽ نوٽس ۾ ڪجهه تبديليون ڪريو.

  • نئين شاخ ٺاهڻ لاءِ مدد شامل ڪئي وئي ٻن ٻين شاخن جي ضم ٿيڻ جو بنياد مقرر ڪرڻ جي نتيجي جي بنياد تي (مرج بيس، هڪ عام ابن ڏاڏن کي پابند ڪرڻ) تعميرات استعمال ڪندي ”گٽ برانچ نيو A...B“ ۽ ”گٽ چيڪ آئوٽ -b نئون. A...B"، جنهن ۾ "A ...B" شامل آهي ٻن مخصوص ڪمن جي وچ ۾ ضم ٿيڻ جو بنياد، جيئن ته ڪيئن "گٽ چيڪ آئوٽ A...B" هيڊ کي بنيادي ڪمٽ ڏانهن منتقل ڪري ٿو ۽ "diff A. ..B" ڪمٽ "B" جي وچ ۾ تبديلين کي ڏيکاري ٿو ۽ ساڳيو ڪمٽ "A" "Ancestor.

    مثال طور، جڏهن توهان هڪ الڳ مائي-فيچر برانچ تي ڪم ڪري رهيا آهيو، اهو فيچر استعمال ڪري سگهجي ٿو جڏهن توهان ڪنهن مختلف برانچ کان شروع ڪرڻ چاهيو ٿا، مثال طور، ماسٽر برانچ ۾ ساڳئي هنڌ کان جتان منهنجي-فيچر برانچ کي چيڪ ڪيو ويو هو. اڳي، هن کي دستي طور تي تبديلي لاگ کي جانچڻ جي ضرورت هئي، جيڪا تڪليف هئي جيڪڏهن توهان وٽ تبديلين جي وڏي تاريخ هئي، پوء ماسٽر ۽ منهنجي-فيچر شاخن جي وچ ۾ مرج بيس جي هيش کي ڳڻڻ لاءِ ”گٽ مرج-بيس ماسٽر مائي-فيچر“ کي هلائڻ. ۽ عام ابن ڏاڏن جي نسبت سان هڪ نئين شاخ ٺاهي ”گٽ برانچ مائي-ٻيو-فيچر هيش“. Git 2.22 ۾، توھان استعمال ڪري سگھوٿا نحو "git branch my-other-feature A...B" ٻن ٻين شاخن جي مرج بيس جي نسبت سان برانچ ٺاھڻ لاءِ.

  • چيڪ آئوٽ آپريشن دوران حاصل ڪيل برانچ جو نالو ڏيکارڻ لاءِ "گٽ برانچ --show-current" اختيار شامل ڪيو ويو؛
  • شامل ڪيو ويو "git checkout —no-overlay — dir" آپشن، جيڪو اجازت ڏئي ٿو، جڏهن چيڪ آئوٽ آپريشن کي انجام ڏئي ٿو، dir ڊاريڪٽري جي مواد کي هڪ فارم ۾ آڻڻ لاءِ جيڪو مڪمل طور تي ماسٽر برانچ جي حالت سان مطابقت رکي ٿو. مثال طور، جيڪڏهن dir ڊاريڪٽري جي لوڪل ڪاپي ۾ ڪا فائيل آهي جيڪا ماسٽر برانچ ۾ نه آهي، ته پوءِ ڊفالٽ طور تي جڏهن ”گِٽ چيڪ آئوٽ ماسٽر - ڊِر“ تي عمل ڪيو ويندو ته اهو ڇڏي ويندو، ۽ جيڪڏهن "--no-overlay" ”اختيار بيان ڪيو ويو آهي، ان کي ختم ڪيو ويندو؛
  • "git diff" ڪمانڊ اختيارن کي پارس ڪرڻ لاءِ يونيورسل API استعمال ڪري ٿو، جيڪو ٻين گٽ يوٽيلٽيز سان گڏ آپشن هينڊلنگ کي متحد ڪرڻ ممڪن بڻائي ٿو. مثال طور، “git diff” ۾، سڀني اختيارن وٽ ھاڻي انھن جا مخالف آھن (“--function-context” ۽ “--no-function-context”)؛
  • شامل ڪيل وڌايل ٽيگ کي فلٽر ڪرڻ جي صلاحيت شامل ڪئي وئي ڪميٽ سان منسلڪ "گٽ لاگ" آئوٽ ("ٽريلر" - اضافي معلومات جا جھنڊا، جهڙوڪ دستخط ٿيل-آف-بائي ۽ ڪو-ليکڪ-جي). اهو ممڪن آهي ته فلٽر ليبل کي ڪنجي ۽ قدر ٻنهي طرفان، مثال طور:
    "git log --pretty="%(trailers:key=Reviewed-by,valueonly)"؛

  • هڪ نئين ٽريڪنگ انجڻ، Trace2، شامل ڪئي وئي آهي، هڪ وڌيڪ لچڪدار ۽ منظم ٿيل آئوٽ پٽ فارميٽ پيش ڪندي. Trace2 توهان کي وڌيڪ تفصيلي تجزيي ۽ ڊيبگنگ لاءِ جاري ڪيل آپريشنز ۽ ڪارڪردگي جي ڊيٽا بابت ٽيلي ميٽري گڏ ڪرڻ جي اجازت ڏئي ٿو (هينڊلر استعمال ڪندڙ طرفان تفويض ڪيو ويو آهي، ڪو به ڊيٽا ٻاهران نه موڪليو ويو آهي)؛
  • ”گٽ بيسڪٽ“ رپورٽ کي وڌيڪ پڙهڻ جي قابل بڻايو ويو آهي، جنهن ۾ مشڪلاتي ڪمن کي هاڻي وڌيڪ واضح طور تي نمايان ڪيو ويو آهي ۽ هر فائل جي تبديلين تي سمري انگ اکر ڏيکاريا ويا آهن (تبديل ٿيل لائينن جي تعداد جي سطح تي)؛
  • ڊاريڪٽري جي نامناسب کي طئي ڪرڻ لاءِ هوريسٽس ٻيهر ڪم ڪيو ويو آهي ته جيئن ليبلز جي غلط تنصيب کي ختم ڪرڻ لاءِ. جڏهن شڪ ۾، اهڙيون ڊائريڪٽريون هاڻي متضاد طور نشان لڳل آهن؛
  • هڪ ڊيڄاريندڙ ظاهر ٿئي ٿو جڏهن توهان ڪنهن ٻئي ٽيگ تي ٽيگ انسٽال ڪرڻ جي ڪوشش ڪندا آهيو، جيڪو عام طور تي غلطي سان ڪيو ويندو آهي ۽ غلط ڪمٽ تي ٽيگ کي ترتيب ڏيڻ جو سبب بڻجي سگهي ٿو (مثال طور، هڪ تعمير جهڙوڪ "گٽ ٽيگ -f -m "تازه پيغام" my-tag1 my-tag2″ جي نتيجي ۾ پراڻي ٽيگ تي هڪ ٽيگ ٺاهي ويندي، جڏهن ته ڊولپر توقع ڪئي ته نئين ٽيگ کي پراڻي ٽيگ جي طرف اشارو ڪيو ويو آهي.
  • جنريشن بٽ ميپ ريپوزٽريز (ڊسڪ تي ٻڌل "پھچڻ واري بٽ ميپس" جي جوڙجڪ) لاءِ فعال ڪئي وئي آھي، جيڪي ھر ڪمٽٽ لاءِ موجود شين جي سيٽن بابت ڊيٽا کي ذخيرو ڪندا آھن ۽ توھان کي اجازت ڏين ٿا ته ھڪ بنيادي شئي جي موجودگيءَ جو تڪڙو اندازو لڳايو. هي ڍانچو خاص طور تي ڊيٽا جي بحالي واري عملن جي عمل جي وقت کي گھٽائي ٿو (گٽ آڻڻ).

جو ذريعو: opennet.ru

تبصرو شامل ڪريو