انتشار کنترل منبع Git 2.40

پس از سه ماه توسعه، انتشار سیستم کنترل منبع توزیع شده Git 2.40 منتشر شد. Git یکی از محبوب‌ترین، قابل اعتمادترین و با کارایی‌ترین سیستم‌های کنترل نسخه است که ابزارهای توسعه غیرخطی انعطاف‌پذیری را بر اساس انشعاب و ادغام شاخه‌ها ارائه می‌کند. برای اطمینان از یکپارچگی تاریخچه و مقاومت در برابر تغییرات ماسبق، از هش ضمنی کل تاریخچه قبلی در هر commit استفاده می شود، همچنین می توان تگ ها و تعهدات فردی را با امضای دیجیتال از توسعه دهندگان تأیید کرد.

در مقایسه با نسخه قبلی، 472 تغییر در نسخه جدید پذیرفته شد که با مشارکت 88 توسعه دهنده تهیه شده بود که 30 نفر از آنها برای اولین بار در توسعه شرکت کردند. نوآوری های اصلی:

  • اسکریپت git-jump علاوه بر ویرایشگر Vim که قبلاً پشتیبانی می‌شد، از ویرایشگر Emacs نیز پشتیبانی می‌کرد. Git-jump برای ارسال اطلاعات در مورد موقعیت های یک فایل به ویرایشگر متن برای پیمایش سریع و پرش به کد ویرایش در یک مکان خاص استفاده می شود. به عنوان مثال، git-jump را می توان برای پرش در ویرایشگر بین خطوط حاصل از تجزیه تضادهای ادغام، ارزیابی تفاوت ها و انجام جستجوها استفاده کرد (می توانید "git jump grep foo" را انجام دهید و سپس به سرعت بین موقعیت هایی که علامت عام "foo" است پرش کنید. رخ می دهد).
  • "git cat-file" از استفاده از گزینه های "-s" و "--batch-check" به همراه "--use-mailmap" برای تعیین صحیح اندازه شی با در نظر گرفتن جایگزینی شناسه بر اساس پشتیبانی می کند. پیوندهای ایمیل مشخص شده در نقشه پستی فایل (قبلاً گزینه «--use-mailmap» فقط بر خروجی محتوا تأثیر می‌گذاشت، اما در نظر نمی‌گرفت که جفت‌های نام/ایمیل قدیمی و جایگزین شده ممکن است اندازه‌های متفاوتی داشته باشند).
  • یک گزینه "--source" به دستور "git check-attr" اضافه شده است تا درختی با فایل ".gitattributes" لازم انتخاب شود، که در صورت وجود چندین فایل ".gitattributes" برای تعیین ویژگی های واقعی استفاده می شود. در مخزن
  • اجرای دستور "git bisect" به زبان C بازنویسی شده و در فایل اجرایی git اصلی تعبیه شده است (قبلاً این دستور در قالب یک اسکریپت شل اجرا می شد).
  • اجرای قدیمی شل دستور "git add —interactive" حذف شده است (در git 2.26 یک نسخه C داخلی ارائه شد، اما پیاده سازی قدیمی Shell در دسترس باقی ماند و توسط تنظیم add.interactive.useBuiltin تنظیم شد).
  • گزینه '-merge-base' به دستور 'git merge-tree' اضافه شد.
  • گزینه "--abbrev=" به دستور "git range-diff" اضافه شد "
  • با تنظیم متغیر GIT_SEQUENCE_EDITOR از طریق دستور "git var"، شبیه به "git var GIT_EDITOR"، امکان لغو ویرایشگر لیست را برای حالت تعاملی دستور rebase اضافه کرد.
  • پشتیبانی از رمزهای عبور با مدت اعتبار محدود به زیر سیستم حساب ها اضافه شده است.
  • اسکریپت‌های تکمیل ورودی برای Bash اکنون حالت حساس به حروف بزرگ دارند.

منبع: opennet.ru

اضافه کردن نظر