Code Owners: فیچر جدید گیت‌هاب به‌منظور مشخص‌سازی بررسی‌کننده‌های سورس‌کد

Code Owners: فیچر جدید گیت‌هاب به‌منظور مشخص‌سازی بررسی‌کننده‌های سورس‌کد

گرچه بررسی سورس‌کد برای هر پروژهٔ موفقی لازم و ضروری است، اما این درحالی است که حتی با کمک دولوپرهای پیشنهادی گیت‌هاب، همیشه مشخص نیست که چه کسی سور‌س‌کد پروژه‌ای خاص را بررسی می‌کند. از این به بعد، صاحبان ریپازیتوری‌های گیت‌هاب می‌توانند بااستفاده ویژگی جدیدی به‌نام Code Owners دقیقاً مشخص کنند چه کسانی و یا چه تیم‌هایی لازم است پروژه‌ٔ به‌خصوصی را بررسی کنند.

این ویژگی هر زمانی‌که در یک فرایند Pull Request فایلی تغییر کند، به‌صورت خودکار از افراد موردنظر درخواست بررسی فایل‌های مشخص شده را می‌کند؛ برای مشخص کردن Code Ownerها، در دایرکتوری ریشهٔ ریپازیتوری، یک فایل با نام CODEOWNERS و با ساختار زیر ایجاد کنید:

# Lines starting with '#' are comments.
# Each line is a file pattern followed by one or more owners.

# These owners will be the default owners for everything in the repo.
*       @defunkt

# Order is important. The last matching pattern has the most precedence.
# So if a pull request only touches javascript files, only these owners
# will be requested to review.
*.js    @octocat @github/js

# You can also use email addresses if you prefer.
docs/*  docs@example.com

اگر قبلا از gitattributes استفاده کرده باشید، شاید این ساختار برای شما آشنا باشد؛ با انجام دادن این کار، هرگاه در یک Pull Request فایلی تغییر کند، به‌صورت اتوماتیک افراد تعیین شده به‌عنوان Code Owner برای بررسی سورس‌کد درنظر قرار خواهند گرفت.

افزایش امنیت
همچنین برای پروژه‌هایی با پروسهٔ بررسی دقیق‌‌تر از یک سو و همچنین افزایش امنیت کار از سوی دیگر، یک گزینهٔ جدید تحت‌عنوان Protected Branch اضافه شده است که برای اطمینان از این موضوع است که افراد موردنظر فرصتی برای بررسی داشته باشند. با فعال کردن گزینهٔ Protected Branch، قبل از این‌که کسی بتواند یک Pull Request را به آن Branch به‌اصطلاح Merge کند، برای هر فایلی که در لیست Code Owners است، افراد تعیین شده حتماً باید از قبل سورس‌کد را بررسی کرده باشند.

گیت‌هاب درنظر دارد با این کار، پروسهٔ بررسی سورس‌کد پروژه‌های اشتراک‌گذاری شده در این پلتفرم بیشتر از گذشته تأثیرگذار باشد (لازم به‌ذکر است که ویژگی Code Owners گیت‌هاب با الهام از قابلیت فایل‌های OWNERS در Chromium ایجاد شده است).

منبع