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

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

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

  • ڊفالٽ کي تبديل ڪيو ويو آهي ٻيو نسخو Git ڪميونيڪيشن پروٽوڪول، جيڪو استعمال ڪيو ويندو آهي جڏهن هڪ ڪلائنٽ ريموٽ طور تي گٽ سرور سان ڳنڍيندو آهي. پروٽوڪول جو ٻيو نسخو قابل ذڪر آهي سرور جي پاسي تي شاخن ۽ ٽيگ کي فلٽر ڪرڻ جي صلاحيت مهيا ڪرڻ لاء، ڪلائنٽ ڏانهن لنڪ جي مختصر فهرست واپس آڻيندي. اڳي، ڪنهن به پل ڪمانڊ هميشه ڪلائنٽ کي موڪليندو هو حوالن جي مڪمل فهرست پوري مخزن ۾، جيتوڻيڪ جڏهن ڪلائنٽ صرف هڪ شاخ کي اپڊيٽ ڪري رهيو هو يا چيڪ ڪري رهيو هو ته انهن جي مخزن جي ڪاپي تاريخ تائين هئي. هڪ ٻيو قابل ذڪر جدت آهي پروٽوڪول ۾ نئين صلاحيتون شامل ڪرڻ جي صلاحيت جيئن نئين ڪارڪردگي ٽول ڪٽ ۾ دستياب ٿي وڃي. ڪلائنٽ ڪوڊ پراڻي پروٽوڪول سان مطابقت رکي ٿو ۽ نئين ۽ پراڻن سرورن سان ڪم ڪرڻ جاري رکي سگھي ٿو، خودڪار طور تي پھرئين ورزن ڏانھن واپس اچي ٿو جيڪڏھن سرور ٻئي کي سپورٽ نٿو ڪري.
  • "-show-scope" آپشن کي "git config" ڪمانڊ ۾ شامل ڪيو ويو آھي، ان کي آسان بڻائي ٿو جڳھ کي سڃاڻڻ جتي ڪجھ سيٽنگون بيان ڪيون ويون آھن. Git توهان کي مختلف هنڌن تي سيٽنگون بيان ڪرڻ جي اجازت ڏئي ٿو: مخزن ۾ (.git/info/config)، صارف ڊاريڪٽري ۾ (~/.gitconfig)، سسٽم-وائڊ ترتيب واري فائيل ۾ (/etc/gitconfig)، ۽ حڪم ذريعي. لڪير جا اختيار ۽ ماحولياتي متغير. جڏهن "git config" تي عمل ڪيو وڃي ته اهو سمجهڻ ڏاڍو ڏکيو آهي ته ڪٿي گهربل سيٽنگ بيان ڪئي وئي آهي. هن مسئلي کي حل ڪرڻ لاء، "--show-origin" اختيار موجود هو، پر اهو صرف ان فائل ڏانهن رستو ڏيکاريندو آهي جنهن ۾ سيٽنگ جي وضاحت ڪئي وئي آهي، جيڪو ڪارائتو آهي جيڪڏهن توهان فائل کي تبديل ڪرڻ جو ارادو ڪيو، پر مدد نه ڪندو آهي جيڪڏهن توهان "-سسٽم"، "--عالمي" يا "-local" اختيارن کي استعمال ڪندي "git config" ذريعي قدر تبديل ڪرڻ جي ضرورت آهي. نئون آپشن "-show-scope" ڏيکاري ٿو متغير تعريف جي حوالي سان ۽ استعمال ڪري سگھجي ٿو -show-origin سان گڏ:

    $ git --list --show-scope --show-origin
    گلوبل فائل:/home/user/.gitconfig diff.interhunkcontext=1
    گلوبل فائل:/home/user/.gitconfig push.default=current
    مقامي فائل:.git/config branch.master.remote=origin
    مقامي فائل:.git/config branch.master.merge=refs/heads/master

    $ git config --show-scope --get-regexp 'diff.*'
    عالمي diff.statgraphwidth 35
    local diff.colormoved plain

    $ git config --global --unset diff.statgraphwidth

  • پابند سيٽنگون ۾ سندون URLs ۾ ماسڪ جي استعمال جي اجازت آهي. Git ۾ ڪي به HTTP سيٽنگون ۽ سندون سيٽ ڪري سگھجن ٿيون سڀني ڪنيڪشنن لاءِ (http.extraHeader, credential.helper) ۽ URL جي بنياد تي ڪنيڪشن لاءِ (credential.https://example.com.helper، credential.https://example. com.helper). هينئر تائين، وائلڊ ڪارڊ جهڙوڪ *.example.com کي صرف HTTP سيٽنگن لاءِ اجازت ڏني وئي هئي، پر سندي بائنڊنگ لاءِ سپورٽ نه ڪئي وئي هئي. Git 2.26 ۾، اهي اختلاف ختم ڪيا ويا آهن ۽، مثال طور، سڀني ذيلي ڊومينز تي صارف جو نالو پابند ڪرڻ لاء توهان هاڻي وضاحت ڪري سگهو ٿا:

    [تصدق "https://*.example.com"]

    استعمال ڪندڙ جو نالو = ttaylorr

  • جزوي ڪلوننگ (جزوي ڪلون) لاءِ تجرباتي مدد جي توسيع جاري آهي، توهان کي صرف ڊيٽا جو حصو منتقل ڪرڻ ۽ مخزن جي نامڪمل ڪاپي سان ڪم ڪرڻ جي اجازت ڏئي ٿي. نئين رليز ۾ هڪ نئون ڪمانڊ شامل ڪيو ويو آهي ”گٽ اسپارس-چڪ آئوٽ ايڊ“، جيڪو توهان کي اجازت ڏئي ٿو انفرادي ڊائريڪٽريز کي لاڳو ڪرڻ لاءِ ”چڪ آئوٽ“ آپريشن کي صرف ڪم ڪندڙ وڻ جي حصي تي، بجاءِ انهن سڀني ڊائريڪٽرن کي هڪ ئي وقت ۾ لسٽ ڪرڻ جي ڪمانڊ ”گٽ. sparse-checkout set" (توهان هڪ هڪ ڊاريڪٽري شامل ڪري سگهو ٿا، هر دفعي پوري لسٽ کي ٻيهر بيان ڪرڻ کان سواءِ).
    مثال طور، هڪ git/git repository کي ڪلون ڪرڻ لاءِ بغير ڪم ڪرڻ جي، صرف ڪم ڪندڙ ڪاپي جي روٽ ڊاريڪٽري تائين چيڪ آئوٽ کي محدود ڪرڻ، ۽ الڳ الڳ چيڪ آئوٽ کي نشان لڳائڻ لاءِ "t" ۽ "Documentation" ڊائريڪٽريز، توهان وضاحت ڪري سگهو ٿا:

    $ git clone --filter=blob: none --sparse [ايميل محفوظ ٿيل]:git/git.git

    $ سي ڊي گٽ
    $ git sparse-checkout init --cone

    $ git sparse-checkout add t
    ....
    $ git sparse-checkout شامل ڪريو دستاويز
    ....
    $ git sparse-checkout list
    دستاويزي
    t

  • "گٽ گريپ" ڪمانڊ جي ڪارڪردگي، موجوده مواد ۽ تاريخي ترميمن جي موجوده مواد کي ڳولڻ لاء استعمال ڪيو ويو، خاص طور تي بهتر ڪيو ويو آهي. ڳولا کي تيز ڪرڻ لاءِ، ڪم ڪندڙ وڻ جي مواد کي اسڪين ڪرڻ ممڪن هو ڪيترن ئي موضوعن کي استعمال ڪندي (“گٽ گريپ – threads”)، پر تاريخي ترميمن ۾ ڳولها سنگل ٿريڊ هئي. ھاڻي ھن حد کي ختم ڪيو ويو آھي قابليت کي لاڳو ڪرڻ سان گڏ پڙھڻ جي عملن کي اعتراض واري اسٽوريج مان. ڊفالٽ طور، موضوعن جو تعداد سي پي يو ڪور جي تعداد جي برابر مقرر ڪيو ويو آھي، جيڪو اڪثر ڪيسن ۾ ھاڻي واضح طور تي "-threads" اختيار کي ترتيب ڏيڻ جي ضرورت نه آھي.
  • ذيلي ڪمانڊ، رستا، لنڪس ۽ ٻين دليلن جي ان پٽ جي خودڪار مڪمل ڪرڻ لاءِ سپورٽ شامل ڪئي وئي ”گٽ ورڪ ٽري“ ڪمانڊ، جيڪا توهان کي اجازت ڏئي ٿي ڪم ڪرڻ جي ڪيترن ئي ڪم ڪندڙ ڪاپين سان گڏ ڪم ڪرڻ لاءِ مخزن جي.
  • شامل ڪيل سپورٽ روشن رنگن لاءِ جن ۾ ANSI فرار جي ترتيبون آهن. مثال طور، نمايان رنگن جي سيٽنگن ۾ "git config -color" يا "git diff -color-moved" توھان وضاحت ڪري سگھو ٿا "%C(brightblue)" ذريعي "--format" اختيار روشن نيري لاءِ.
  • اسڪرپٽ جو نئون ورزن شامل ڪيو ويو fsmonitor-نگران، ميکانيزم سان انضمام مهيا ڪرڻ فيسبوڪ واچ مين فائل تبديلين جي ٽريڪنگ کي تيز ڪرڻ ۽ نئين فائلن جي ظاهر ٿيڻ لاء. گٽ کي اپڊيٽ ڪرڻ کان پوء ضروري آهي بدلايو مخزن ۾ ڇڪيو.
  • bitmaps استعمال ڪندي جزوي کلون کي تيز ڪرڻ لاءِ اصلاحون شامل ڪيون ويون
    (bitmap مشينري) سڀني شين جي مڪمل ڳولا کان بچڻ لاءِ جڏهن آئوٽ پٽ کي فلٽر ڪيو وڃي. جزوي ڪلوننگ دوران بلب جي چڪاس (-فلٽر=بلب:ڪنهن به نه ۽ -فلٽر=بلوب:حد=n) هاڻي ڪئي وئي آهي
    گهڻو تيز. GitHub انهن اصلاحن سان پيچ جو اعلان ڪيو ۽ جزوي ڪلوننگ لاءِ تجرباتي سپورٽ.

  • "git rebase" حڪم کي مختلف پس منظر ۾ منتقل ڪيو ويو آهي، ڊفالٽ 'ضم' ميڪانيزم استعمال ڪندي (اڳ ۾ استعمال ڪيو ويو "rebase -i" لاءِ) بدران 'patch+apply'. پس منظر ڪجھ ننڍن طريقن ۾ مختلف آھن، مثال طور، ھڪڙي تڪرار کي حل ڪرڻ کان پوء آپريشن جاري رکڻ کان پوء (git rebase --continue)، نئون پس منظر پيش ڪري ٿو ڪمٽ ميسيج کي ايڊٽ ڪرڻ لاءِ، جڏھن ته پراڻو صرف پراڻو پيغام استعمال ڪندو آھي. پراڻي رويي ڏانهن موٽڻ لاء، توهان "--apply" اختيار استعمال ڪري سگهو ٿا يا 'rebase.backend' ترتيب واري متغير کي 'لاڳو' تي سيٽ ڪري سگھو ٿا.
  • .netrc ذريعي بيان ڪيل تصديق جي پيرا ميٽرز لاءِ هينڊلر جو هڪ مثال هڪ فارم ۾ گھٽجي ويو آهي جيڪو باڪس کان ٻاهر استعمال لاءِ مناسب آهي.
  • شامل ڪيو ويو gpg.minTrustLevel سيٽنگ کي گھٽ ۾ گھٽ اعتماد جي سطح مقرر ڪرڻ لاءِ مختلف عناصر جيڪي ڊجيٽل دستخط جي تصديق ڪن ٿا.
  • شامل ڪيو ويو "-pathspec-from-file" اختيار "git rm" ۽ "git stash" ۾.
  • SHA-2 جي بدران SHA-1 hashing algorithm ڏانهن منتقلي جي تياري ۾ ٽيسٽ سوٽ جي بهتري جاري رهي.

جو ذريعو: opennet.ru

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