ثبت تغییرات شما
حالا که مرحله آمادهسازی شما به شکلی که میخواهید تنظیم شده، میتوانید تغییرات خود را ثبت کنید. به یاد داشته باشید که هر چیزی که هنوز مرحله بندی نشده - هر فایلی که ایجاد یا ویرایش کردهاید و پس از ویرایش دستور git add
را اجرا نکردهاید - وارد این کامیت نمیشود. به عنوان فایلهای ویرایش شده رو دیسک شما باقی میمانند. فرض کنید اخرین باری که دستور git status
را اجرا کردید، دیدید که همه چیز مرحلهبندی شده و بنابراین آمادهاید تغییرات خود را ثبت کنید. سادهترین راه برای ثit بت این است که:
$ git commit
با این کار ویرایشگر مورد نظر شما باز میشود. این ویرایشگر توسط متغیر محیطی EDITOR شل شما تنظیم میشود - معمولاً vim یا emacs، اگر چه میتوانید آن را با استفاده از دستور git config --global core.editor
به هر جیزی که میخواهید پیکربندی کنید. همینظور که در getting started دیدید.
ویرایشگر متنی چیزی شبیه به این را به شما نشان میدهد:
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# On branch master
# Your branch is up-to-date with 'origin/master'.
#
# Changes to be committed:
# new file: README
# modified: CONTRIBUTING.md
#
~
~
~
".git/COMMIT_EDITMSG" 9L, 283C
شما میتوانید مشاهده کنید که پیام ثبت پیش فرض شامل اخرین خروجی دستور git status
است که به صورت کامنت نوشته شده و یک خط خالی در بالای آن وجود دارد. میتوانید این کامنت را حذف کرده پ پیام ثبت خود را بنویسید یا اینکه آنها را برای یادآوری تغییراتی که در حال ثبت هستید، حفظ کنید.
برای یادآوری صریحتر از تغییرات خود، میتوانید گزینه - را به git commit
اضافه کنید این کار همچنین تغییرات شما را در ویرایشگر نشان میدهد تا دقیقا ببینید چه تغییراتی را ثبت کرده میکنید.
زمانی که از ویرایشگر خارج میشوید، گیت کامیت شما را با آن پیام ثبت میکند(با حذف کامنتها و تفاوتها).
به طور جایگزین، میتوانید پیام ثبت خود را به صورت خطی با استفاده از فلگ -m مشخص کنید:
$ git commit -m "Story 182: fix benchmarks for speed"
در این صورت خواهید دید که کامیت شما ایجاد شده و خروجی زیر را نشان میدهد:
[master 463dc4f] Story 182: fix benchmarks for speed
2 files changed, 2 insertions(+)
create mode 100644 README
حالا شما اولین کامیت خود را ایجاد کرده اید! میتوانید ببینید که کامیت اطلاعاتی درباره خود دارد: کدام برنچ ثبت شده(master)،چه بررسی SHA-1 برای کامیت وجود دارد (463dc4f)، چه تعداد فایل تغییر کرده و آمار مربوط کامیت که چه خطوطی اضافه یا حذف شده است.
به یاد داشته باشید که کامیت وضعیت فعلی شما را که در مرحله آمادهسازی تنظیم کردهاید، ضبط میکند. هر چیزی که مرحله بندی نکردید هنوز به عنوان ویرایش شده باقیمانده است؛ میتوانید یک کامیت دیگر برای اضافه کردن آن به تاریخچهتان انجام دهید. هر بار که ثبت میکنید، یک snapshot از پروژه خود را کامیت می:نید میتوانید بعداً به آن بازگردید یا مقایسه کنید.