دستورات گیت

دستورات گیت Git (34 دستور کاربردی که باید بدانید)

اساطیر زبان

اگر یک توسعه دهنده تازه کار یا حتی باتجربه هستید باید از کنترل منبع استفاده کنید. احتمال استفاده از گیت (Git) برای مدیریت کد منبع زیاد است. برای استفاده از Git باید دستورات آن را بشناسید. در این آموزش با مفیدترین دستورات گیت آشنا خواهید شد و می توانید سطح خودتان را بهبود دهید. در اینجا برای راهنمایی آسان و مفیدتر، دستورات Git را به سه بخش مختلف تقسیم کرده ایم: دستورات پایه، متوسط ​​و پیشرفته.

دستورات سطح پایه Git

در بخش اول دستورات پایه Git را یاد خواهید گرفت. این دستورات، پایه و اساس یادگیری دستورات پیشرفته تر هستند.

در اینجا 9 دستور کاربردی گیت آورده شده است:

1- git config

دستور git config بسیار مفید است به خصوص وقتی برای اولین بار از گیت استفاده می کنید یا یک گیت جدید نصب کرده باشید. این دستور هویت شما را با نام و آدرس ایمیل تنظیم می کند. بعد از این هر اطلاعات یا تغییری با این اعتبار ثبت خواهد شد.

تنظیم نام:

$ git config –global user.name “Your name”

تنظیم ایمیل:

$ git config –global user.email “Your email”

2- git version

همانطور که از اسمش مشخصه برای بررسی نسخه Git استفاده می شود.

$ git version

3- git init

احتمالاً اولین دستوری است که برای شروع یک پروژه جدید در Git استفاده می کنید. این دستور یک مخزن خالی جدید ایجاد می کند که در ادامه می توانید کد منبع خود را در داخل آن ذخیره کنید.

$ git init

همچنین می توانید نام مخزن را در دستور git init بیاورید.

$ git init <your repository name>

4- git clone

از دستور git clone برای کپی یک مخزن موجود استفاده می شود. یک تفاوت اساسی بین git init و git clone وجود دارد.

از git clone زمانی استفاده می کنید که نیاز به یک کپی روی مخزن موجود دارید. دستور git clone ابتدا از دستور git init استفاده می کند سپس تمام محتوای آن را بررسی خواهد کرد.

git clone <your project URL>

5- git add

دستور git add همه فایل های جدید کد یا فایل های ویرایش شده را به مخزن اضافه می کند. این دستور گزینه های مختلفی را برای اضافه کردن فایل ها و پوشه ها ارائه می دهد.

دستور زیر یک فایل خاص را به ناحیه stage اضافه می کند.

$ git add your_file_name

دستور زیر همه فایل های ویرایش شده و جدید را به ناحیه stage اضافه می کند.

$ git add *

6- git commit

این یک دستور ضروری در Git است. در واقع دستور git commit تغییرات را به مخزن محلی اضافه خواهد کرد.

اگر از این دستور به درستی استفاده نکنید، کیفیت پروژه تحت تاثیر قرار می گیرد.

$ git commit -m “your useful commit message”

7-git status

git status برای بررسی وضعیت فایل ها استفاده می شود و می توانید تشخیص دهید کدام فایل ها نیاز به توجه دارند. این دستور در هر زمانی قابل اجرا است.

می توانید از آن در بین دستورات Git add و Git commits برای دیدن وضعیت استفاده کنید.

$ git status

8- git branch

اغلب چند شاخه در مخزن Git وجود دارد. شاخه یا branch یک خط مستقل از توسعه کد است.

با دستور git branch می توانید شاخه ها را به طور موثر مدیریت کنید. گزینه ها و سوئیچ های مختلفی از Git branch وجود دارد.

i) لیست کردن همه شاخه ها

$ git branch

ii) ساخت یک شاخه جدید

$ git branch <branch_name>

iii) حذف یک شاخه

$ git branch -d <branch_name>

9- git checkout

از این دستور برای جابجایی بین شاخه ها استفاده می شود. یکی از دستورات قدرتمند git است و می تواند به عنوان یک ابزار چند منظوره استفاده شود.

رفتن به شاخه دیگر:

$ git checkout <branch_name>

همچنین می توانید یک شاخه جدید بسازید و روی آن سوییچ کنید.

$ git checkout -b <your_new_branch_name>

دستورات سطح متوسط ​​ Git

بعد از دستورات پایه دستورات سطح متوسط Git ​​را بررسی می کنیم. این دستورات برای همکاری با تیم و به اشتراک گذاری کد خود با دیگران بسیار مفید هستند. دستورات دیگری مانند ورود به سیستم نیز وجود دارد که به شما کمک می کند تاریخچه commitهای قبلی را مشاهده کنید.

10- git remote

این دستور مانند یک مرز اطراف مخزن عمل می کند. در صورت نیاز به ارتباط با دنیای خارج از مخزن باید از دستور git remote استفاده کنید. این دستور مخزن محلی را به ریموت متصل می کند.

$ git remote add <shortname> <url>

مثال

$ git remote add origin https://dev.azure.com/aCompiler/_git/DemoProject

11- git push

پس از اتصال به مخزن از راه دور (با کمک دستور git remote) وقتشه که تغییرات را به مخزن بفرستید.

$ git push -u <short_name> <your_branch_name>

مثال

$ git push -u origin feature_branch

باید قبل از استفاده از دستور git push منبع و قسمت بالایی Git تنظیم شود.

$ git push –set-upstream <short_name> <branch_name>

مثال

$ git push –set-upstream origin feature_branch

13- git fetch

در صورت نیاز به دانلود سایر تغییرات اعضای تیم یا دیگر مخزن ها باید از دستور git fetch استفاده کنید.

این دستور همه اطلاعات مربوط به commitها، رفرنس ها و … را دانلود می کند بنابراین می توانید قبل از اعمال این تغییرات در مخزن محلی خود آنها را مرور کنید.

$ git fetch

13- git pull

دستور git pull محتوا را دانلود کرده (نه متاداده ها) و بلافاصله مخزن محلی را با جدیدترین مطالب به روزرسانی می کند.

$ git pull <remote_url>

14- git stash

این دستور فایل های ویرایش شده را به طور موقت ذخیره می کند. stash در لغت به معنی ذخیره کردن است. در گیت نیز هر چیزی که کامیت نشده رو ذخیره می کند.

می توانید با دستور git stash به صورت زیر کار کنید.

$ git stash

دستور زیر همه stashهای را لیست می کند.

$ git stash list

به سادگی یک stash به شاخه اعمال می کند.

$ git stash apply

15- git log

با کمک دستور git log می توانید همه کامیت های قبلی با شروع از آخرین کامیت را مشاهده کنید.

$ git log

به طور پیشفرض همه کامیت های شاخه فعلی را نشان می دهد اما می توانید از آن برای دیدن همه کامیت های کل شاخه ها با همه گزینه ها استفاده کنید.

$ git log –all

16- git shortlog

دستور git shortlog خلاصه ای از دستور git log را نشان می دهد. اگر فقط علاقه یا نیاز به یک خلاصه کوتاه دارید، این یک دستور مفید است.

این دستور برای دیدن اینکه چه کسی روی چه چیزی کار کرده نیز کاربرد دارد.

$ git shortlog

Git Shortlog Results

17- git show

در مقایسه با دستور git log، دستور git show جزئیات مربوط به یک کامیت خاص را نشان می دهد.

$ git show <your_commit_hash>

18- git rm

بعضی اوقات باید چند فایل را حذف کنید، در اینجا از دستور Git rm استفاده می شود.

این دستور می تواند فایل های ردیابی شده را از ایندکس و دایرکتوری کار حذف کند.

$ git rm <your_file_name>

19- git merge

دستور git merge کمک می کند تا تغییرات از دو شاخه را در یک شاخه واحد ادغام کنید.

$ git merge <branch_name>

این دستور، <branch_name> نوشتهخ شده در دستور را در شاخه انتخاب شده فعلی ادغام می کند.

آموزش همه زبان های برنامه نویسی (رایگان)

دستورات سطح پیشرفته Git

یک سطح جلوتر می رویم. در این بخش با دستورات پیشرفته Git آشنا خواهید شد. این دستورات به زمان و تمرین بیشتری نیاز دارند اما وقتی اصول آنها را یاد بگیرید استفاده از آنها آسانتر خواهد شد.

20- git rebase

git rebase شبیه دستور git merge است. دو شاخه را با یک استثنا در یک شاخه واحد ادغام می کند. یک دستور git rebase تاریخچه کامیت را بازنویسی می کند.

اگر چند شاخه خصوصی دارید باید از دستور git rebase برای ادغام در یک شاخه استفاده کنید. این باعث می شود که یک تاریخچه کامیت خطی بسازید.

$ git rebase <base>

21- git bisect

دستور git bisect کمک می کند تا کامیت های بد را پیدا کنید.

i) شروع git bisect

$ git bisect start

ii) به git bisect درباره یک کامیت خوب اطلاع دهید.

$ git bisect good a123

iii) به git bisect درباره یک کامیت بد اطلاع دهید.

$ git bisect bad z123

با استفاده از git bisect می توانید کد خراب را در عرض چند دقیقه تعیین کرده و میزان کدهای خراب را کم کنید.

22- git cherry-pick

git cherry-pick یک دستور مفید و قوی است که امکان انتخاب هر کامیتی را از هر شاخه و اعمال آن به هر شاخه دیگری را فراهم می کند.

$ git cherry-pick <commit-hash>

23- git archive

دستور git archive چند فایل را در یک فایل واحد ترکیب می کند. مانند ابزار zip است، یعنی می توانید فایل ها را از حالت فشرده خارج کنید و به هر کدام از فایل ها به طور جداگانه دسترسی داشته باشید.

$ git archive –format zip HEAD > archive-HEAD.zip

یک فایل zip از بازبینی فعلی ایجاد می کند.

24- git pull –rebase

بیشتر مواقع هنگام استفاده از git pull باید rebase (نه ادغام یا merge) انجام دهید.

در این صورت می توانید از گزینه زیر استفاده کنید.

$ git pull –rebase

این کمک می کند تا تاریخچه را تمیز نگه دارید. همچنین از ادغام های متعدد جلوگیری می کند.

25- git blame

برای بررسی سطر به سطر محتوای هر فایل از دستور git blame استفاده کنید. این دستور کمک می کند تا تشخیص دهید چه کسی تغییرات را در یک فایل ایجاد کرده است.

$ git blame <your_file_name>

26- git tag

در Git تگ ها مفید هستند و می توانید از آنها برای مدیریت انتشار استفاده کنید. می توانید تگ را مانند یک شاخه بدون تغییر در نظر بگیرید. اهمیت آن هنگام انتشار عمومی خیلی بیشتری است. از دستور git tag برای ایجاد یک تگ جدید استفاده می شود.

$ git tag -a v1.0.0

27- git verify-commit

دستور git verify-commit امضای gpg کامیت ها را بررسی می کند. GPG یا “GNU Privacy Guard” است.

$ git verify-commit <commit>

28- git verify-tag

با این دستور می توانید تگ را تأیید کنید.

$ git verify-tag <tag>

29- git diff

بیشتر اوقات قبل از commit یا push باید دو فایل یا شاخه git را با هم مقایسه کنید. دستور مفید git diff برای این کار استفاده می شود.

i) مقایسه دایرکتوری کاری با مخزن محلی:

$ git diff HEAD <filename>

ii) مقایسه دو شاخه:

$ git diff <source branch> <target branch>

30- git citool

git citool یک جایگزین گرافیکی برای کامیت Git است.

$ git citool

31- git mv

دستور git mv برای تغییر نام فایل git استفاده می شود. دو آرگومان دارد؛ نام فایل منبع و مقصد.

$ git mv <old-file-name> <new-file-name>

32- git clean

با استفاده از دستور git clean می توانید با فایل های ردیابی نشده (untracked) کار کنید. با این دستور می توانید همه فایل های ردیابی نشده را از دایرکتوری کار حذف کنید. برای کار با فایل های ردیابی شده (tracked) باید از دستور git reset استفاده کنید.

$ git clean

33- git help

دستورات زیادی در Git وجود دارد، برای به دست آوردن اطلاعات و راهنمایی بیشتر برای هر دستور می توانید از دستور git help در هر زمان از ترمینال استفاده کنید.

$ git help <git_command>

34- git whatchanged

دستور git whatchanged همان کار git log را انجام می دهد اما در قالب خام.

$ git whatchanged

حتما دانلود کنید: آموزش گیت لب و گیت هاب از صفر تا صد رایگان (فیلم+ جزوه PDF)

تفاوت پک های حرفه ای ما با آموزشهای رایگان: بطور خلاصه از زمین تا آسمان! 1-پکها، جدیدترین نسخه نرم افزارها را آموزش می دهند با قابلیت های بسیار بیشتر. 2-پکها توسط متخصص آن نرم افزار، به صورت کاملا پروژه محور و با حل چالش هایی که در مسیر کار عملی و حرفه ای با آن روبرو می شوید تهیه شده اند و بعد از استفاده، کاملا برای بازار کار آماده اید! 3- متد این پکها کاملا کار شده و تا ماهها، در ذهن تان ماندگارند و یادگیری بسیار سریعتر و کاملتری خواهید داشت. آموزشهای رایگان فقط دستورات نرم افزارها را (آنهم ناقص) بیان می کنند و تازه برای ورود به بازار باید ماهها تجربه عملی هم کسب کنید !!

turned_in,

چرب زبان

با این اپلیکیشن ساده، هر زبانی رو فقط با 5 دقیقه در روز، توی 80 روز مثل بلبل حرف بزن! بهترین متد روز، تقویت حافظه، آموزش تصویری. یادگیری زبان کلید یادگیری هر مهارتی در قرن 21 !


حتما بخوانید!

2 دیدگاه. ارسال دیدگاه جدید

  • سلام
    عالی بود ممنونم

    پاسخ
  • محمدحسین
    آذر 3, 1402 10:49 ب.ظ

    سلام
    متشکرم از توضیح و مطالب ساده و روان.
    من یک مشکلی دارم. یک branch ساخته بودم ولی sync نکردم. حالا کلی تغییر دارم داخل branch ساخته شده. می خوام Pull request بزنم conflict خورده ، حالا نمی دونم چه طوری چه گزینه ای رو باید بزنم که Conflict برطرف بشه؟ دستی اینکار انجام میشه یا خودکار ؟ (چه غلطی کردم ابتدا sync نکردم !!!) ممنون میشم راهنمایی کنید مهمه و زمانم کم 🙁

    پاسخ

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این فیلد را پر کنید
این فیلد را پر کنید
لطفاً یک نشانی ایمیل معتبر بنویسید.

فهرست