Джерри клонирует хранилище и решает реализовать основные строковые операции. Поэтому он создает файл string.c. После добавления содержимого string.c будет выглядеть следующим образом —
#include <stdio.h> int my_strlen(char *s) { char *p = s; while (*p) ++p; return (p - s); } int main(void) { int i; char *s[] = { "Git tutorials", "Tutorials Point" }; for (i = 0; i < 2; ++i) printf("string lenght of %s = %d\n", s[i], my_strlen(s[i])); return 0; }
Он скомпилировал и протестировал свой код, и все работает нормально. Теперь он может безопасно добавить эти изменения в хранилище.
Git add операция добавляет файл в область подготовки.
[jerry@CentOS project]$ git status -s ?? string ?? string.c [jerry@CentOS project]$ git add string.c
Git показывает знак вопроса перед именами файлов. Очевидно, что эти файлы не являются частью Git, и поэтому Git не знает, что делать с этими файлами. Вот почему Git показывает вопросительный знак перед именами файлов.
Джерри добавил файл в область хранения, команда git status покажет файлы, присутствующие в области подготовки.
[jerry@CentOS project]$ git status -s A string.c ?? string
Чтобы зафиксировать изменения, он использовал команду git commit, а затем опцию –m. Если мы опускаем опцию –m. Git откроет текстовый редактор, где мы можем написать многострочное сообщение о коммите.
[jerry@CentOS project]$ git commit -m 'Implemented my_strlen function'
Приведенная выше команда даст следующий результат —
[master cbe1249] Implemented my_strlen function 1 files changed, 24 insertions(+), 0 deletions(-) create mode 100644 string.c
После коммита для просмотра подробностей журнала он запускает команду git log. Он будет отображать информацию обо всех коммитах с их идентификатором, автором, датой и хэшем SHA-1 .
[jerry@CentOS project]$ git log
Приведенная выше команда даст следующий результат —