logo

Git Commit

Използва се за записване на промените в хранилището. Това е следващата команда след git add . Всеки комит съдържа индексните данни и съобщението за комит. Всеки ангажимент формира връзка родител-дете. Когато добавим файл в Git, той ще се постави в промежутъчната зона. Команда за извършване се използва за извличане на актуализации от зоната за етап към хранилището.

Постановката и ангажиментът са свързани помежду си. Постановката ни позволява да продължим да правим промени в хранилището и когато искаме да споделим тези промени в системата за контрол на версиите, ангажирането ни позволява да запишем тези промени.

Ангажиментите са моментните снимки на проекта. Всеки комит се записва в главния клон на хранилището. Можем да извикаме ангажиментите или да го върнем към по-старата версия. Два различни ангажимента никога няма да презапишат, защото всеки комит има свой собствен commit-id. Този commit-id е криптографски номер, създаден от SHA (сигурен хеш алгоритъм) алгоритъм.

Нека да видим различните видове ангажименти.

Командата git commit

Командата commit ще извърши промените и ще генерира commit-id. Командата commit без никакъв аргумент ще отвори текстовия редактор по подразбиране и ще поиска съобщението за commit. Можем да посочим нашето съобщение за ангажиране в този текстов редактор. Той ще работи както следва:

 $ git commit 

Горната команда ще изведе редактор по подразбиране и ще поиска съобщение за ангажиране. Направихме промяна на нов файл1.txt и искате то да го ангажира. Може да се направи по следния начин:

Помислете за резултата по-долу:

Git Commit

Докато изпълняваме командата, тя ще изведе текстов редактор по подразбиране и ще поиска съобщение за ангажиране. Текстовият редактор ще изглежда по следния начин:

Git Commit

Натисни Esc ключ и след това ' аз ' за режим на вмъкване. Въведете съобщение за ангажиране каквото искате. Натиснете Esc след това ' :wq ', за да запазите и да излезете от редактора. Следователно ние успешно поехме ангажимент.

Можем да проверим комита чрез командата git log. Помислете за резултата по-долу:

Git Commit

Можем да видим в изхода по-горе, че опцията за регистриране показва идентификатор на ангажимент, подробности за автора, дата и час и съобщението за комит.

За да научите повече за опцията за дневник, посетете Git Log .

Git commit -a

Командата commit също предоставя опция за указване на някои ангажименти. Използва се за записване на моментни снимки на всички промени. Тази опция разглежда само вече добавени файлове в Git. Той няма да ангажира новосъздадените файлове. Помислете за сценария по-долу:

Направихме някои актуализации на нашия вече етапен файл newfile3 и създадохме файл newfile4.txt. Проверете състоянието на хранилището и изпълнете командата за извършване, както следва:

 $ git commit -a 

Помислете за изхода:

Git Commit

Горната команда ще изведе нашия текстов редактор по подразбиране и ще поиска съобщението за ангажиране. Въведете съобщение за ангажиране и след това запазете и излезте от редактора. Този процес ще ангажира само вече добавените файлове. Няма да ангажира файловете, които не са поставени. Помислете за резултата по-долу:

Git Commit

Както можем да видим в горния резултат, newfile4.txt не е ангажиран.

Git commit -m

Опцията -m на командата за извършване ви позволява да напишете съобщението за извършване на командния ред. Тази команда няма да подкани текстовия редактор. Той ще работи както следва:

 $ git commit -m 'Commit message.' 

Горната команда ще направи ангажимент с даденото съобщение за ангажимент. Помислете за резултата по-долу:

Git Commit

В горния резултат, a нов файл4.txt е ангажиран в нашето хранилище със съобщение за ангажиране.

Можем също да използваме -съм опция за вече поставени файлове. Тази команда незабавно ще направи ангажимент за вече поставени файлове със съобщение за ангажимент. Той ще работи както следва:

 $ git commit -am 'Commit message.' 

Git Commit Amend (Промяна на съобщението за ангажиране)

Опцията за изменение ни позволява да редактираме последния комит. Ако случайно сме извършили грешно съобщение за ангажимент, тогава тази функция е дива опция за нас. Той ще работи както следва:

 $ git commit -amend 

Горната команда ще изведе текстовия редактор по подразбиране и ще ни позволи да редактираме съобщението за ангажимент.

Може да се нуждаем от някои други основни операции, свързани с ангажимента, като връщане на ангажимент, отмяна на ангажимент и други, но тези операции не са част от командата комит. Можем да го направим с други команди. Някои основни операции са както следва:

  • Git undo commit: Посетете Git Reset
  • Git revert commit: Посетете Git Revert
  • git премахване на ангажимент: Посетете Git Rm