Начни с этого, друг, остальное приложится. :)
Работа с файлами и папками:
- создать папку:
mkdir - создать файл:
touch - копировать/перемещать:
cp/mv ~/my dir - читать:
cat - удалить файл:
rm - удалить папку:
rmdir - удалить папку со всем содержимым:
rm -r
Хеш
Git преобразует информацию о коммитах с помощью алгоритма SHA-1 и для каждого из них рассчитывает уникальный идентификатор — хеш.
Хеш — основной идентификатор коммита и позволяет узнать его автора, дату и содержимое закоммиченных файлов.
Все хеши, а также таблицу соответствий хеш → информация о коммите Git хранит в папке .git.
Исследуем лог
- Можно вызвать не только полный лог, но и сокращённый — это делается командой
git log --oneline. - В сокращённом логе выводятся сокращённые хеши — их можно использовать точно так же, как и полные.
HEAD - всему голова.
- В числе прочих файлов в папке
.gitесть служебный файлHEAD. Он указывает на самый свежий коммит. - Вместо хеша последнего коммита можно написать слово
HEAD— Git вас поймёт.
Статусы файлов
- Статусом
untrackedпомечается файл, о существовании которого Git знает, но не следит за изменениями в нём. Этот статус — противоположностьtracked, в который попадают все файлы, отслеживаемые Git. - Файл переходит в статус
stagedпосле выполненияgit add. - Статус
modifiedозначает, что файл был изменён. - Большинство файлов в проектах «шагает» по следующему циклу: «изменён» → «добавлен в список на коммит» → «закоммичен» → «изменён» → и так далее.
git statusпоказывает явно следующие состояния файлов:untracked,stagedиmodified.git statusподсказывает, какие команды можно выполнить, чтобы поменять состояние файла.
Оформление сообщений к коммитам Хорошо, когда:
- сообщение коммита легко читается;
- оно информативное;
- все сообщения оформлены в одном стиле.
Conventional Commits предлагает такой формат коммита: : <сообщение>. Первая часть type — это тип изменений. Таких типов достаточно много. Вот два примера:
feat(сокращение от англ. feature) — для новой функциональности;fix(от англ. «исправить», «устранить») — для исправленных ошибок.
Если коммит «закрывает» или «решает» какую-то задачу, то в его сообщении удобно указывать ссылку на неё. Для этого в любом месте сообщения нужно указать #<номер задачи>.