Улучшайте свои коммиты с помощью обычных коммитов

Узнайте, как использовать CommitLint и Husky, чтобы добавить структуру и улучшить читаемость ваших коммитов

Если вы в течение некоторого времени были в мире разработки, очень вероятно, что изображение выше кажется вам знакомым, каждый разработчик программного обеспечения уже писал плохие коммиты в какой-то момент своей карьеры, и кто может их стыдить?

Писать последовательные, содержательные сообщения о коммитах сложно, поэтому в этом руководстве мы узнаем, как улучшить сообщения о коммитах с помощью обычных коммитов.

Что такое обычные коммиты?

Спецификация Обычные коммиты — это простое соглашение поверх сообщений коммитов. Он предоставляет простой набор правил для создания явной истории фиксации.

Ниже вы можете увидеть структуру, которой следует стандартная фиксация.

type

Тип предназначен для описания категории вашего изменения. Наиболее распространенные типы: build, chore, ci, docs, feat, fix, perf, refactor, revert, style и test.

Необязательный объем

Вторая необязательная часть — это так называемая область. Область действия Описывает модуль, на который повлияло ваше изменение.

Описание

В описании описаны изменения, внесенные вашим коммитом.

Самый простой способ понять, как это выглядит, — посмотреть на несколько примеров. Вот несколько минимальных сообщений фиксации, удовлетворяющих правилам.

Вы можете узнать больше о том, как отформатировать свои коммиты, прочитав стандартную спецификацию коммитов.

Хаски и КоммитЛинт

Теперь, когда вы знаете о традиционных коммитах, вы уже можете начать следовать правилам спецификации самостоятельно, но легче сказать, чем сделать, верно? Чтобы помочь нам поддерживать хороший шаблон фиксации, мы можем использовать две библиотеки Javascript, CommitLint и Husky. Сначала поговорим о CommitLint.

См. также:  Руководство для начинающих по API, протоколам и форматам данных

CommitLint проверяет, соответствуют ли наши сообщения фиксации общепринятому формату фиксации, поэтому нам не нужно беспокоиться об ошибке, пока мы устанавливаем правильные правила, CommitLint будет для нас.

Если вы программируете на языке, отличном от Javascript, не волнуйтесь, есть много других библиотек, таких как CommitLints, для других языков, вам просто нужно найти ту, которая соответствует вашим потребностям.

Установка CommitLint

Давайте начнем с установки CommitLint и их интерфейса командной строки в вашем репозитории в качестве зависимости от разработки.

Окна

npm install --save-dev @commitlint/config-conventional

Mac / Linux

npm install --save-dev @commitlint/{config-conventional,cli}

Теперь давайте настроим commitlint в соответствии со стандартной спецификацией коммитов.

Сначала начните с создания файла commitlint.config.js, вы можете сделать это вручную или с помощью своего терминала.

echo "module.exports = {extends: ['@commitlint/config-conventional']}" > commitlint.config.js

Внутри нашего commitlint.config.js мы можем установить некоторые правила, в этой статье я буду использовать правила из примера конфигурации правил commitlint, но не стесняйтесь проверять их документы для лучшего объяснения всех различных правил и настроек, которые имеет для вас commitlint.

Теперь, когда мы закончили с CommitLint, вы можете начать использовать их интерфейс командной строки для проверки наших коммитов, однако я предпочитаю использовать Husky, чтобы делать это автоматически.

Хаски

Husky — это библиотека, которая позволяет нам использовать Git Hooks для наших коммитов. Перехватчики Git позволяют запускать пользовательские сценарии в вашем репозитории перед заданным действием, например фиксацией или push. Мы будем использовать это вместе с CommitLint, чтобы проверить, соответствует ли наша фиксация правилам, установленным в нашем файле конфигурации commitlint.

Настраивать

npm install husky --save-dev

Теперь давайте сообщим нашему файлу package.json использовать хуки Husky с правилами фиксации:

См. также:  Диагностика GCC - это здорово, но этого недостаточно

Теперь мы можем проверить, все ли работает.

Заключение

Хорошие сообщения о фиксации важны для поддержки любого долгосрочного проекта. Это помогает вам отслеживать все ваши коммиты и знать, какие изменения были внесены в каждый коммит, а с обычными коммитами вы можете начать делать это очень быстро, я настоятельно рекомендую вам попробовать и узнать больше об этом на их официальный сайт .

Если вы хотите проверить файлы конфигурации, которые я создал для этого проекта, вы можете получить их в моем репозитории GitHub.

Понравилась статья? Поделиться с друзьями:
IT Шеф
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: