۴ اسکریپت حیاتی و پرکاربرد در گیت

Git Extras بیش از ۶۰ اسکریپت دارد که به عمل‌کرد پایه‌ای گیت اضافه می‌شود. در این مطلب طریقه نصب، استفاده و مشارکت در گیت اکستراس را می‌آموزیم.

در سال ۲۰۰۵ لینوس تروالدز گیت را برای جابجا کردن راهکار مدیریت کنترل سورس توزیع‌شده که قبلاً مجبور بود برای نگهداری هسته لینوکس استفاده کند، ساخت. از آن موقع، گیت تبدیل به یک راهکار برتر ورژن کنترل برای اپن سورس و تیم‌های توسعه cloud-native شد.

حتی برترین اپلیکیشن‌ها از نظر قابلیت‌های مورد نیاز مثل گیت هم ممکن است همه قابلیت‌های مورد نیاز کاربر را نداشته باشند و افرادی هستند که برای اضافه کردن این قابلیت‌ها تلاش می‌کنند. در مورد گیت، یکی از این افراد TJ Holowaychuk است. پروژه Git Extras شامل بیش از ۶۰ قابلیت اضافه است که به اسکریپت‌های پایه گیت اضافه می‌شوند و بسیار پرکاربرد و کارراه‌انداز هستند.

استفاده از Git Extras

در ادامه طرز استفاده ۴ اسکریپت محبوب Git Extras توضیح داده می‌شود

git-ignore

git-ignore یک اسکریپت مناسب است که به شما اجازه افزودن دستی فایل تایپ و کامنت به فابل .git-ignore را بدون نیاز به باز کردن ویرایشگر متن می‌دهد. این کامند هم با فایل ignore کلی برای اکانت کاربری شما و هم با فایل ignore فردی برای ریپازیتوری‌ای که در حال کار روی آن هستید، کار می‌کند.

اجرای git-ignore بدون پارامتر، اول فایل ignore کلی و بعد فایل‌های ignore لوکال را لیست خواهد کرد.

$ git ignore
Global gitignore: /home/alice/.gitignore
# Numerous always-ignore extensions
*.diff
*.err
*.orig
*.rej
*.swo
*.swp
*.vi
*~
*.sass-cache

# OS or Editor folders
Thumbs.db
---------------------------------
Local gitignore: .gitignore
nbproject

git-info

git-info همه اطلاعات مورد نیاز شما برای گرفتن head در چارچوب ریپازیتوری‌ای که روی آن کار می‌کند را بازمی‌گرداند. این اطلاعات شامل تمام URL های ریموت، برنچ‌های ریموت، برنچ‌های لوکال، اطلاعات تنظیمات و آخرین کامیت می‌شود.

$ git info

## Remote URLs:

origin      git@github.com:sampleAuthor/git-extras.git (fetch)
origin      git@github.com:sampleAuthor/git-extras.git (push)

## Remote Branches:

origin/HEAD -> origin/master
origin/myBranch

## Local Branches:

myBranch
* master

## Most Recent Commit:

commit e3952df2c172c6f3eb533d8d0b1a6c77250769a7
Author: Sample Author <sampleAuthor@gmail.com>

Added git-info command.

Type ´git log´ for more commits, or ´git show <commit id>´ for full commit details.

## Configuration (.git/config):

color.diff=auto
color.status=auto
color.branch=auto
user.name=Sample Author
user.email=sampleAuthor@gmail.com
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true
core.ignorecase=true
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
remote.origin.url=git@github.com:mub/git-extras.git
branch.master.remote=origin
branch.master.merge=refs/heads/master

git-mr و git-pr

این دو اسکریپت کارهای مشابهی انجام می‌دهند و اساساً به یک شکل کار می‌کنند.

  • git-mr یک merg request را از گیت‌لب وارسی می‌کند.
  • git-pr یک pull request را در گیت‌هاب وارسی می‌کند.

در هر دو مورد، شما فقط به شماره merge یا pull request و یا آدرس کامل آن نیاز دارید و این کامند مرجع ریموت را واکشی می‌کند، برنچ را checkout یا وارسی می‌کند، و تنظیمات را انجام می‌دهد. بنابراین گیت می‌داند که کدام برنچ جایگزین خواهد شد.

$ git mr 51
From gitlab.com:owner/repository
 * [new ref]         refs/merge-requests/51/head -> mr/51
Switched to branch 'mr/51'

git-release

با ترکیب کردن commit و tag و push در یک کامند واحد، git-release به شما کمک می‌کند ۳ کامندی را که خیلی از مواقع پشت سر هم اجرا می‌کنید، یک‌باره اجرا کنید.

برای کامیت با یک <tagname> مشخص و پیام سفارشی:

$ git release 0.1.0 -m <+ powerful feature added>

دیگر کامندها

این‌ها فقط ۴ کامند از بیش از ۶۰ کامند Git Extras بود. برای دسترسی به لیست کامل کامندهای در دسترس در Git Extras می‌توانید فایل Commands.md را در ریپازیتوری سورس ببینید یا بعد از نصب Git Extras کامند زیر را اجرا کنید.

$ git extras --help

نصب Git Extras

پیش‌نیاز اصلی برای نصب Git Extras، نصب داشتن نسخه کامند لاین Git است. اگر قصد بیلد کردن از روی سورس را دارید، نیاز به ابزارهایی مثل make هم دارید.

اگر از نسخه‌های اخیر macOS استفاده می‌کنید، بهترین کار استفاده از Homebrew است.

$ brew install git-extras

روی لینوکس، Git Extras روی پکیج منیجر محلی هر پلتفرم در دسترس است. گاهی اوقات، احتیاج به فعال کردن یک ریپازیتوری اضافه دارید، مثل EPEL روی CentOS و سپس اجرای یک کامند ساده:

$ sudo yum install git-extras

دستورالعمل نصب کامل برای توزیع‌های لینوکس، BSD، و دیگر پلتفرم‌ها در فایل Installation.md در ریپازیتوری در دسترس است.

مشارکت

اگر فکر می‌کنید عملیاتی هست که در گیت بسیار استفاده می‌شود و برای آن کامند واحدی وجود ندارد، می‌توانید با توسعه و اضافه کردن آن به Git Extras در آن مشارکت کنید. برای مشارکت در Git Extras توضیحات مشخص‌تری در فایل CONTRIBUTING.md وجود دارد.

منابع:
https://opensource.com/article/20/4/git-extras

دیگر مقاله‌های مرتبط
همه چیز درباره فریم‌ورک‌های چندسکویی یا Cross platform

فریم‌ورک‌های چندسکویی ابزارهایی برای توسعه نرم‌افزارهایی هستند که توانایی اجرا بر روی بیش از یک سیستم‌عامل را دارند. در مقابل Read more

مقایسه Qt و React Native، دو ابزار بزرگ توسعه نرم‌افزارهای چندسکویی

فریم‌ورک‌های چندسکویی ابزارهایی هستند که به کمک آنها می‌توان نرم‌افزارهایی با قابلیت اجرا بر روی چند سیستم‌عامل را با کمترین Read more

خبر خوب: نسخه بتای Qt Design Studio 1.2 منتشر شد + آموزش

Qt Design Studio ابزار طراحی و توسعه UI است که به طراحان و توسعه‌دهندگان در پروتوتایپ کردن و توسعه UI Read more

چگونه در اندروید TextView با قابلیت Justify شده بسازیم؟

یکی از معضلات برنامه نویسی در اندروید مرتب ساختن متن‌های بلند میباشد که به صورت معمول این قابلیت امکان پذیر Read more