لیست مهمترین دستورات گیت
مقالات برنامه نویسیبرای یادگیری سریع گیت ، کافیست تا اصلی ترین و عمومی ترین دستورات گیت را یاد گرفته و شروع کار با آن را آغاز کنید . در این مقاله بیش از 40 دستور را خدمتتان ارائه کردیم .

اگر بدنبال لیست مهم ترین دستورات گیت هستید مسلما کمی با نرم افزار کنترل ورژن گیت آشنایی دارید و میدانید که پایه ، اساس و اصول کاری این نرم افزار بر چه روالی است .گیت در بخش کاربری های عمومی دستورات زیادی ندارد اما هر یک از دستورات چندین دستور تکمیلی دارند که یادگیری آنها برای راحتی در کدنویسی میتواند ارزشمند باشد . البته که هنر استفاده از گیت به مرور زمان توسط شما کسب خواهد شد و برای اینکه متناسب با پروژه خودتان از گیت استفاده کنید لازم است تا مدتی آن را برای کنترل نسخه پروژه های خود به کار گیرید .
در گیت دستورات اصلی و فرعی وجود دارد اما میتوان با یادگیری اصلی ترین دستورات ، خیلی سریع تر کار با گیت را در خط فرمان شروع کرد . ابتدا از دستورات اولیه شروع نموده و توضیح هر دستور را نیز شرح خواهیم داد .
دستور git version
این دستور در پروژه شما تغییری ایجاد نمی کند و فقط نسخه نرم افزار گیت را به شما نمایش خواهد داد
git - -version
از این دستور برای اطمینان حاصل کردن از نصب صحیح گیت در همان ابتدا میتوان استفاده کرد .
دستور git init
برای ایجاد یک مخزن گیت و یا اتصال به مخزن ( قراردادن پروژه تحت اختیار گیت برای کنترل نسخه های مختلف ) از دستور زیر استفاده می شود و در حقیقت این اولین دستوری است که هنگام کار با یک پروژه برای اولین بار باید از آن استفاده نمود .
git init
پس از اجرای این دستور ، یک فولدر مخفی با نام git. در دایرکتوری پروژه ایجاد شده و به این ترتیب یک ریپازیتوری خواهید داشت .
دستورات config
برای پیکربندی پروژه خودتان ، لازم است تا یک نام کاربری و یک ایمیل را به گیت معرفی کنید تا مشخص شود چه کسی بر روی پروژه کار میکند که البته در پروژه های گروهی بسیار اهمیت دارد ، برای این کار از دو دستور زیر باید استفاده کنیم
git config --global user.name "seo90"
git config --global user.email "info@seo90.ir"
در این حالت کانفیگ اولیه پروژه شما یکبار برای همیشه انجام خواهد شد .
دستور status
در هر یک از مراحل کدنویسی و پس از انجام تغییر در پروژه یا نوشتن دستوراتی خاص در خط فرمان جهت ایجاد تغییر روی پروژه ، میتوان با این دستور وضعیت پروژه را بررسی کرد
git status
این دستور ازجمله دستورات بسیار کاربردی است که مدام در حین پروژه از آن استفاده می کنیم و برخلاف دو دستور بالا ، تنها یکبار کاربرد ندارد .
دستور add در گیت
در داخل گیت کلا 3 حالت برای فایل های داریم ، حالت modified ، حالت staged و نهایتا حالت committed ، زمانی که فایل هایی برای اولین بار ایجاد می شوند وضعیت آنها در حالت اولیه به شکل untracked است . در ابتدا باید تمامی فایل ها و فولدر های پروژه را به مخزن گیت اضافه کنیم که در این شرایط میتوان از دستور زیر استفاده کرد
git add .
قراردادن یک نقطه بعد از دستور add به این معنی است که تمامی فایل ها و فولدر هایی که در ابتدای پروژه هنوز به مخزن گیت اضافه نشده است ، وارد مخزن شوند تا گیت بتواند آنها را کنترل کند . اما پس از اولین دستور add ، لازم است تا هر فایلی که تغییر کرد بصورت تکی یا فایل های گروهی به مخزن اضافه شوند . در حالت اول که وضعیت فایل ها untracked است ، فایل ها با دستور add به مخزن اضافه می شوند و به حالت staged میروند . در مراحل بعدی با انجام هر تغییری روی فایل ها ، هر فایلی که تغییرات روی آن اعمال می شود به حالت modified میرود و باید با دستور add دوباره در حالت staged قرار گیرد .
اگر لازم باشد تا فایل ها به شکل تکی اضافه شوند میتوان از نام فایل و پسوند آن به شکل زیر استفاده کرد
git add index.html
اگر لازم باشد تا چندین فایل که پسوند یکسان دارند اضافه شوند میتوان از این دستور استفاده کرد
git add *.css
اگر قصد دارید تا دو فایل که پسوند های متفاوت دارند را add کنید ، میتوانید دوبار دستور add را برای هر یک از فایل ها نوشته و یا از یک دستور به شکل زیر استفاده کنید
git add index.html style.css
در این حالت هر دو فایل add شده و به حالت staged خواهند رفت .
دستور commit
زمانی که فایل های شما در حالت staged قرار گرفته است آماده هستند تا commit شوند . commit شدن به این معنی است که یک نسخه از پروژه را ذخیره کنیم . پس باید دقت کنیم زمانی که قصد داریم یک نسخه از پروژه تهیه شود باید از دستور commit استفاده کنیم
git commit -m "Initial commit"
در این دستور بخش m- به این معنی است که یک پیغام برای خودمان بنویسیم و بعد ها هنگام بازیابی نسخه های پروژه برای ما قابل درک باشد که این کامیت را در چه مرحله از پروژه ایجاد کردهایم . اگر قصد داریم تا هم فایل ها را add کنیم و همزمان با آن یک commit نیز انجام دهیم میتوان از دستور ترکیبی زیر استفاده کرد بجای اینکه یک بار دستور add و یکبار دیگر دستور commit را بنویسیم
git commit -a -m "some text"
این یک دستور ترکیبی برای انجام همزمان عمل add و commit است .
دستور rm
اگر قصد دارید تا فایل هایی که در حالت staged هستند را از حالت staged خارج نموده و دوباره به وضعیت شناخته نشده یا همان untracked ببرید میتوانید از دستور زیر استفاده کنید
git rm --cached index.html
اگر قصد دارید تا دو فایل با پسوند های متفاوت را از staged خارج کنید میتوانید دستور زیر را بنویسید
git rm --cached index.html style.css
اگر قصد دارید تا پوشه ها از حالت staged خارج شوند باید از یک r- دیگر نیز به شکل زیر استفاده کنید
git rm --cached -r images
این دستور پوشه images را از حالت staged به unstaged انتقال خواهد داد ، اما یک دستور دیگر نیز وجود دارد که به شکل زیر است
git rm --cached -r .
پس از اجرای این دستور تمامی فایل ها و فولدر ها از حالت staged به unstaged انتقال خواهند یافت
دستور log
اگر در داخل پروژه خود و در مراحل مختلف چندین کامیت را انجام داده باشید و اکنون قصد دارید تا لیست آنها را مشاهده کرده و تصمیم بگیرید که به کدام نسخه سوئیچ کنید میتوانید از دستور زیر استفاده کنید . در این حالت تمامی کامیت های با یک آیدی مشخص و کاملا منحصر بفرد با جزئیاتی شامل پیغام نوشته شده هنگام ثبت کامیت و مشخصات شخصی که کامیت را انجام داده است نمایش داده خواهد شد
git log
در این گزارش اگر تعداد کامیت ها زیاد باشد مابقی آنها نمایش داده نخواهد شد و باید با زدن کلید enter ادامه لیست را باز کنید . زمانی که به انتهای لیست رسیدید میتوانید با زدن کلید q و یا کلید های ترکیبی crtl و c ، دوباره به حالت طبیعی خط فرمان بازگردید . اگر قصد داشته باشید تا کامیت ها را به شکلی خلاصه تر مشاهده کنید میتوانید بنویسید
git log –oneline
در این حالت همه کامیت ها با جزئیات مختصر و تنها در یک خط نمایش داده خواهند شد ولی اگر قصد دارید تا گزارشی بین دو حالت بالا را مشاهده کنید میتوانید از دستور زیر استفاده کنید
git log –summary
اما چگونه باید بین این کامیت ها جابجا شویم
دستور reset
برای مشاهده نسخه های ذخیره شده از پروژه خود ابتدا باید لیست کامیت ها را با دستور log دریافت نموده و سپس قصد ورود به هر کامیت را که داشته باشید به شکل زیر عمل کنید
git reset commitID
در بخش commitID باید آیدی کامیتی که دربخش log مشاهده می کنید را وارد کنید تا به نسخه مدنظر خود سوئیچ کنید . اکنون میتوانید تصمیم بگیرید که از نسخه وارد شده به آن قصد دارید تا چگونه پروژه را ادامه دهید .
دستور branch
زمانی که قصد داشته باشیم تا پروژه را بین افراد مختلف تقسیم کنیم ، هر شخص را یک شاخه یا یک برنچ درنظر خواهیم گرفت . برای اینکه یک شاخه جدید بسازیم باید از دستور زیر استفاده کنیم
git branch branch name
در بخش branch name کافیست تا یک نام وارد کنید برای مثال seomind یا نام شخص ! اگر قصد داشته باشیم تا بین شاخه ها جابجا شویم و از شاخه اصلی که نام آن master است به شاخه دیگری برویم از دستور زیر استفاده می کنیم
git checkout branch name
اگر قصد دارید تا یک شاخه را اضافه کرده و همزمان نیز به داخل آن سوئیچ کنید ، دستور زیر را استفاده کنید
git checkout -b branch name
اکر قصد دارید یک شاخه را حذف کنید
git branch -d branch name
اگر قصد دارید تا لیست تمامی برنچ ها و شاخه ها را مشاهده کنید
git branch -a
اگر پس از انجام کارهای مدنظر در یک شاخه ، قصد داشتید تا آن را با شاخه دیگری ادغام کنید ، باید ابتدا به شاخه مدنظر بروید که قصد دارید تغییرات در آن اعمال شود و سپس دستور زیر را بنویسید ، اگر این دستور در شاخه فعال انجام شود ، تغییرات روی آن شاخه اعمال خواهد شد
git merge branch name
اگر قصد دارید تا قبل از ادغام برنچ ها تغییرات را مشاهده کنید و باعث عدم ایجاد تداخل شوید دستور زیر را استفاده کنید
git diff source branch target branch
اما اگر قصد دارید تا تغییرات را فقط در شاخه خودتان پس از آخرین کامیت انجام شده بررسی کنید باید از دستور زیر استفاده کنید
git diff
در این حالت یک گزارش کامل از آخرین تغییرات شما پس از کامیت نهایی را مشاهده خواهید کرد
دستور stash
اگر در حین کار مجبور باشید تا موقتا کار روی پروژه را متوقف کنید و دسته دیگری از کدها را ادامه دهید میتوانید کدهای خود را موقتا در یک حافظه ذخیره کنید و بعدا این قسمت را بازیابی کنید برای این کار باید یک stash انجام دهید
git stash
اگر این دستور را بنویسید ، تغییرات فعلی شما پس از آخرین کامیت انجام شده وارد stash خواهد شد و شما دقیقا به حالت آخرین کامیتی که انجام داده بودید باز خواهید گشت . اگر چندین استش را انجام دهید میتوانید بعدها لیست تمامی استش ها را با دستور زیر مشاهده کنید
git stash list
اگر از دستور ساده git stash استفاده کنید ، خود سیستم به استش ها یک اندیس خواهد داد ، برای مثال اگر 3 عد استش داشته باشیم لیست آنها به شکل زیر نمایش داده خواهد شد
stash@{0}: WIP on master: 5002d47 our new homepage
stash@{1}: WIP on master: 5002d47 our new homepage
stash@{2}: WIP on master: 5002d47 our new homepage
اگر قصد داشته باشید هنگام stash کردن یک نام نیز به دلخواه خودتان برای استش درنظر بگیرید میتوانید از دستور زیر استفاده کنید
git stash save "Your Stash Message"
در لیست استش ها ، همواره آخرین استش در ابتدا نمایش داده میشود و به این معنی است که استش با نام stash@{0} آخرین استشی است که انجام دادهاید . اگر قصد دارید تا تغییرات موجود در آخرین استش شما اعمال شود میتوانید مستقیما از دستور زیر استفاده کنید
git stash apply
اگر قصد دارید تا تغییرات ذخیره شده در استش خاصی را اعمال کنید باید به آیدی آن استش یا نامی که خودتان برای آن درنظر گرفتید اشاره کنید به شکل زیر
git stash apply stash@{1}
پس از apply کردن استش ها ، آنها هنوز در لیست استش های شما وجود دارند ، اگر قصد داشته باشید تا استش پس از اعمال شدن به پروژه از لیست استش ها نیز حذف شود باید از دستور زیر استفاده کنید
ٰgit stash pop stash@{1}
اگر قصد داشته باشید تا تغییرات موجود در استش را پس از آخرین کامیت انجام شده مشاهده کنید باید از دستور زیراستفاده کنید
git stash show
اگر قصد دارید تا تغییرات در استش های خاصی را مشاهده کنید باید دستور زیر را در خط فرمان وارد کنید
git stash show stash@{1}
اگر قصد دارید تا تمامی استش های ذخیره شده و ایجاد شده را حذف کنید
Git stash clear
اگر قصد دارید تا استش خاصی را حذف کنید لازم است تا به آیدی یا نام آن اشاره کنید
git stash drop stash@{1}
اگر قصد دارید تا تغییرات یک استش را در یک شاخه جدید ذخیره نموده و پس از آن استش را نیز پاک کنید میتوانید از دستور زیر استفاده کنید
git stash branch branchname stash@{1}
این دستورات اصلی ترین و کاربردی ترین مواردی هستند که هنگام کار با گیت به شکل لوکال نیاز دارید تا با آنها آشنایی داشته باشید . پس از اتمام پروژه اگر لازم باشد تا آن را بروی گیت هاب انتقال دهید نیز چند دستور ساده را باید یاد بگیرید . اصلی ترین دستوراتی که باید با آنها آشنایی کافی و لازم را داشته باشید ، دستوراتی بودند که در این صفحه خدمتتان ارائه کردیم . جهت آموزش کامل گیت و همچنین گیت هاب میتوانید از دوره ارائه شده در ابتدای مطلب استفاده کنید .

امید قدیمی هستم ، 8 سال است که در زمینه طراحی و برنامه نویسی وب سایت فعالیت می کنم . توسعه دهنده فرانت اند ، طراح و برنامه نویس انواع وب سایت های وردپرسی ، فعال در زمینه تولید محتوا و سئو وب سایت
نقشه راه فرانت
اگر قصد دارید تا یک طراح ماهر باشید ، ما درست ترین مسیر را برای شما فراهم کردیم و فقط کافیست همراه ما باشید
در این مقاله ماهیت فریمورک Symfony را بررسی کرده و ویژگی های آن را به شکل کامل بیان خواهیم کرد . چرا میتوانید سیمفونی را بعنوان یک فریمورک مناسب برای زبان php بپذیرید ؟
در این مقاله زبان هایی که برای بخش برنامه نویسی وب مورد استفاده هستند را بررسی نموده و ویژگی های هرکدام را شرح دادیم تا با توجه به پتانسیل خودتان و به دور از تعصب شروع به یادگیری زبان برنامه نویسی دلخواه نمائید .
سلام چشم حتما